亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

ACProtect Professional 1.3C 主程序脫殼(3)(圖)

互聯(lián)網(wǎng)   發(fā)布時(shí)間:2008-10-08 19:05:26   作者:佚名   我要評(píng)論
運(yùn)行程序,crashedL。直接用修復(fù)完stolen code的dumped_.exe看看。從EP的第1個(gè)call進(jìn)去就有問題。 在OllyDbg中可以看到: 有部分IAT在殼中。這部分代碼前面是跟到了的(在第6次int 3以后),原來認(rèn)為這只是loader自己需要的API。實(shí)際上

找到匹配地址后,ecx等于表項(xiàng)的offset,第1項(xiàng)為0x2A。

2) 查opcode表
用1中的到的offset查opcode數(shù)據(jù)表(007262ED):

密文opcode表:


counter表(記錄每個(gè)地址的調(diào)用次數(shù),超出0x20次將使用新的地址解碼):


第1次解出的變形碼:



3) 調(diào)整stack以便正確調(diào)用變形碼及返回




4) 破壞解出的代碼,ret到變形碼




5) 執(zhí)行變形碼,返回到原程序




6) Patch

先把解出的代碼binary copy到dumped_.exe(直接copy 722416 - 7226B0的代碼即可)。

關(guān)閉722579的解碼(解出7225C1 - 7226B0):


關(guān)閉7226A8處對(duì)前面代碼的破壞:


patch 72260C: jnz->jmp,無論執(zhí)行多少次都使用同一解碼地址



copy正確的ImageBase值,這里為0,改72FC1F為400000





copy 正確的10 bytes key(第1 byte為0)




執(zhí)行,仍然crashedL。

8. 修復(fù)Replaced code (2)

還有replaced code,在這里出異常:


->


將解出的代碼貼到ACProtect_Fixed.exe。可以看到,這些實(shí)際上是變形的call代碼。第1次執(zhí)行到這里,在buffer中解出的變形碼為:




XOR的結(jié)果:



目前的dumped_.exe,地址72ED83的值為0(這些值是loader寫入的)。

406DF8的變形碼原來是call GetKeyboardType。原程序的call API 全部被抽掉了。殼代碼的動(dòng)作與前面相似,用返回地址查表,獲取相應(yīng)的指針,生成jmp dword ptr ds:[xxxxxxxx]指令,該地址則指向類似72124C的變形碼,調(diào)用正確的API。

變形call API的返回RVA地址表:

開始:


結(jié)束:


尋址變形碼數(shù)組下標(biāo)表(每項(xiàng)1字節(jié)),用于查變形碼指針數(shù)組:


變形碼地址表(指向變形碼的指針):


相關(guān)文章

最新評(píng)論