国产毛片a精品毛-国产毛片黄片-国产毛片久久国产-国产毛片久久精品-青娱乐极品在线-青娱乐精品

查看: 5417|回復: 1
打印 上一主題 下一主題

HotC51共產兒童團第十五課:菜農點評__HotASM_START__看誰是尿童

[復制鏈接]
跳轉到指定樓層
樓主
發表于 2009-4-2 22:42:32 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
關鍵詞: HotASM , START , 菜農 , 點評 , 兒童團
xwj 發表于 2009-3-5 10:03 單片機 ←返回版面

樓主: 《反忽悠秘笈》--老x教你怎樣抵擋老Hotel的“紅杏出墻裝瘋拳”


HotC51 發表于 2009-3-9 19:37 裸奔式實時操作系統HotTask51 ←返回版面

樓主: HotC51共產兒童團第十五課:菜農點評__HotASM_START__看誰是尿童



開課:
xwj 發表于 2009-3-5 12:28 侃單片機 ←返回版面

17樓: “紅杏出墻裝瘋拳”詳解--第一招:

/*---------------------------------------------
    HotTask51系統啟動函數
   
void __HotASM_START__(void)
入口:
      Keil DPTR = &__HotASM_START__[0]
           R2D1 = DPTR
出口:
結果: 二次RETI后繼續執行
特點: 本“函數”可以“動態加載”
-----------------------------------------------*/
--老x:上面是注釋,在中國上過學的都能看懂,就不用啰嗦了
--觀眾:這還不啰嗦啊?暈!
--老x:甭暈啊,這都還沒開始呢...
HotASM (__HotASM_START__)//(void)        --定義個code區的數組,相當于code const unsigned char __HotASM_START__
                                        --為什么呀?
                                        --為什么?先去看下HotASM.h啊,里面先一招typedef code const unsigned char HotASM_ARRAY;//類型定義
                                                                          然后一招#define HotASM(NAME) HotASM_ARRAY(NAME)[]=
                                        --嗯,象這樣的問題老x以后就不再回答了,免得浪費時間,還把老x也累得要死...
{//DPTR保存的是匯編數組函數的首地址__HotASM_START__
#define lable__HotASM_START__Exit \
(    size_CLR_A()  + size_MOV_REG_A()  + size_JZ()  + size_LJMP()  + 2 * size_MOV_A_REG()  + 2 * size_ADD_A()  + 2 * size_PUSH_REG())
--嗯,這個是用來計算跳轉多少個字節的,因為后面有個分支,一個分支分支就會有2個出口,有2個出口當然就會有不同的跳轉偏移...
--暈,老x今天怎么這么象唐僧啊?
--嗯,那就先不管了,其實老x覺得啊,這樣子好麻煩啊,還要把中間跳過的指令都復制過來,還要統計中間的字節數,真是麻煩啊~~~,老x覺得啊,可以有更簡單的方法啊,比如直接就RETI啊...
--少啰嗦,快說正題!
--好好,老x接著分析啊~~
    asm_CLR_A(),                    --想不用想,把ACC清零(有什么用呢?)
    asm_MOV_IE_A(),//關中斷            --哦,原來是IE=ACC; 關中斷。(那...為什么不干脆CLR EA呢?)
    asm_JZ(size_LJMP() - 1),//NOP()    --A為零跳轉(這不是那脫褲子排氣嗎?A肯定為0啊,剛剛才清過呢)
    asm_LJMP(0x5500),//                --跳過去了,永遠運行不到
    asm_MOV_A_DPL(),                --ACC=DPL;
    asm_ADD_A(lable__HotASM_START__Exit),//__HotASM_START__0    --加上偏移,進位的話影響CY
    asm_PUSH_ACC(),//壓入跳入地址__HotASM_START__0低8位            --ACC入棧,SP加一
    asm_MOV_A_DPH(),//                --ACC=DPH;
    asm_ADDC_A(0),                    --前面加偏移時可能會進位,把可能的進位加進去
    asm_PUSH_ACC(),//壓入跳入地址__HotASM_START__0高8位            --ACC入棧,SP又加一;這是堆棧中最高2字節是下一個出口的地址
//lable__HotASM_START__Exit:
    asm_RETI()//(連續調用RETI二次)    --明明只有一次RETI嗎,看來老Hotel真是老糊涂了
                                    --RETIRET的作用可大了它的作用就是把堆棧中最高2字節裝入PC(程序地址指針寄存器),把SP-2,這樣下一個指令就返回到堆棧中最高2字節對應的地址位置繼續執行了
                                    --這就相當于一個可以任意設置跳轉位置的LJMP,所有的OS可都要玩到這一招哦
};

首先可以看出XWJ很少“反匯編”,而且C51的匯編應該屬于“尿童級”。
    asm_CLR_A(),                    --想不用想,把ACC清零(有什么用呢?)
    asm_MOV_IE_A(),//關中斷            --哦,原來是IE=ACC; 關中斷。(那...為什么不干脆CLR EA呢?)
    asm_JZ(size_LJMP() - 1),//NOP()    --A為零跳轉(這不是那脫褲子排氣嗎?A肯定為0啊,剛剛才清過呢)
    asm_LJMP(0x5500),//                --跳過去了,永遠運行不到

在這4句里,隱藏了反逆向技術。
首先,asm_CLR_A(),得到一確定的事情,ACC肯定為0
asm_MOV_IE_A(),//關中斷,因為是初始化函數,就應該初始化干凈。
否則軟中斷后,EX0等IE內的5個中斷標志不會被清除。
下面這2句誰能看出來???
    asm_JZ(size_LJMP() - 1),//NOP()    --A為零跳轉(這不是那脫褲子排氣嗎?A肯定為0啊,剛剛才清過呢)
    asm_LJMP(0x5500),//                --跳過去了,永遠運行不到

脫褲子排屁是臭逆向者的~~~因為此時ACC為0,它跳入了asm_LJMP(0x5500),的第2操作數0x00。
0x00是數據,但代碼確實NOP!!!
0x5500就是引誘反匯編去0x5500處折騰的,正常的程序永遠不會執行到~~~
這是系列反逆向技術的一招。請團員們切記!!!
大家可以耐心地debug,可以看到好好的反匯編窗口在執行開始沒有NOP指令,
單步到JZ后,在單步發現指令列表突然變化了---出現了NOP!!!
試想,團員們用菜農的“250”招后,誰還再來反匯編???
暈都暈死它~~~
俺是“反匯編”的“革命先烈”~~~最近“反水”,所以俺最知道對付“自己人”
~~~
程序雖小,不暈則好。
有時間繼續點評其他HotC51Demo內的小程序~~~
注意,每個都有課本上學不到的知識~~~
課畢

HotC51@126.com   2009.3.9于菜地。
團部:
http://group.ednchina.com/1623/
沙發
發表于 2009-4-5 16:14:30 | 只看該作者
這東西用來做源代碼加密不錯!
您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

關于我們  -  服務條款  -  使用指南  -  站點地圖  -  友情鏈接  -  聯系我們
電子工程網 © 版權所有   京ICP備16069177號 | 京公網安備11010502021702
快速回復 返回頂部 返回列表
主站蜘蛛池模板: 牛牛在线精品免费视频观看 | 麻豆网站在线观看 | 男女交配在线观看 | 欧美高清一区 | 欧美日韩亚洲精品国产色 | 手机看日韩毛片福利盒子 | 久久大香伊蕉在人线观看热2 | 黄视频在线免费看 | 国内精品久久久久影院免费 | 俄罗斯人与动物xxxx | 2021精品综合久久久久 | 四虎精品免费久久 | 久久精品99精品免费观看 | 成人黄色激情视频 | 亚洲一区二区在线 | 四虎影视免费观看 | 果冻传媒麻豆文化传媒 | 久久精品操| 成年人视频在线观看免费 | 久久九九精品视频 | 色婷婷久久合月综 | 日本高清中文字幕一区二区三区 | 久久毛片视频 | 2019自拍偷拍视频 | 久久久久久尹人网香蕉 | 国产精品国产三级在线专区 | a一级黄 | 成年美女黄网站色大片图片 | 国产欧美一区二区三区精品 | 九九视频在线观看视频 | 日韩毛片高清免费 | 亚洲精品免播放器在线观看 | 五月天亚洲婷婷 | 黄色片视频在线观看 | 欧美一区二区三区在线观看不卡 | 三级欧美在线 | 在线观看香蕉免费啪在线观看 | 韩国黄色一级毛片 | 国产精品一区在线免费观看 | 亚洲 欧美 日韩在线 | 亚洲天堂久久新 |