运用措施
功能介绍
1.反混合
在反汇编窗口中抉择并实施这条指令。它会试验将剩余指令中转换成为清晰的指令。
举例:
原始指令:
00874372 57 PUSH EDI
00874373 BF 352AAF6A MOV EDI,6AAF2A35
00874378 81E7 0D152A41 AND EDI,412A150D
0087437E 81F7 01002A40 XOR EDI,402A0001
00874384 01FB ADD EBX,EDI
00874386 5F POP EDI
反混合后:
00874372 83C3 04 ADD EBX,4
2.反混合-单步
这条指令的道理同上一条相似,不外它一次只合成一条指令。
3.将nop置后
将这种方式的代码:
00874396 50 PUSH EAX
00874397 90 NOP
00874398 90 NOP
00874399 52 PUSH EDX
0087439A BA 3F976B00 MOV EDX,somesoft.006B973F
0087439F 90 NOP
008743A0 90 NOP
008743A1 90 NOP
转换为:
00874396 50 PUSH EAX
00874397 52 PUSH EDX
00874398 BA 3F976B00 MOV EDX,somesoft.006B973F
0087439D 90 NOP
0087439E 90 NOP
0087439F 90 NOP
008743A0 90 NOP
008743A1 90 NOP
限度:它会跳出所有跳转指令以及call指令
4.作废/重新实施
作废或者再次实施前一条指令
5.检索跳转功能
它会动态合成指令而且跟踪所有的跳转指令。在挨次不断地跳来跳去的场所下,这个功能黑白常实用的。当它碰着不能跟踪的指令时,它会停止合成,将所有已经合成竣事的指令拷贝到一块指定的内存中去。
在设定中配置这些参数:
步过所有的call-假如配置的话,它会步过所有的call。否则它会跟踪它们。
步过jcc-dtto(?)
反混合-在碰着Jcc,RET,JMP,CALL指令时,它会反混合指令。在挨次有多分支的时候颇为实用。
举例:
转换前:
00874389 /EB 05 JMP SHORT somesoft.00874390
0087438B |43 INC EBX
0087438C |41 INC ECX
0087438D |42 INC EDX
0087438E |EB 07 JMP SHORT somesoft.00874397
00874390 B8 07000000 MOV EAX,7
00874395 ^ EB F4 JMP SHORT somesoft.0087438B
00874397 C3 RET
转换后:
003B0000 B8 07000000 MOV EAX,7
003B0005 43 INC EBX
003B0006 41 INC ECX
003B0007 42 INC EDX
003B0008 C3 RET
6.重修资源以及重部署
此功能在脱壳时有一些限度。它从磁盘上掀开被调试的文件。而后找到所有的资源并将它们重修到一块区段(之后它将资源重修到exe中的原始区段中)。而后它重新部署文件,以一个新的名字来保存文件。
甚么时候此功能是实用的?举例来说,在脱apack/asprotect概况其余一些壳的预先。这些壳会从原始区段中窃取一些资源,而且将它们部署到自己的区段中。由此会削减文件的巨细,而且防止你去除了壳的区段。同时它也防止了经由一些资源黑客软件看到这些资源。
我确信会有比这个插件更好的工具,不外将它整合进来无意分黑白常利便的。
7.AsProctect脱壳
此功能可能脱那些被asprotect加之壳的文件而且修复它们,导出asprotect.dll,将信息输入到txt文件中去。当此功能失败的时候,请提交目的文件给我。
限度:
1.无奈找到以及修复SDK 1.x版本的函数(你需要手动追寻它们)
此处有两种情景。一种是在OEP以前被调用的函数。它们妨碍一系列的初始化功能。假如它们不被实施,挨次可能会揭示失效。找到它们并实施它们:-)
第二种是在OEP之后实施的,经由特殊的参数潜在在GetprocAddress之后,这些函数AsProtect将它们重新转向到了自己的代码中。你需要手动合成这些代码。
2.在2.30-2.51中,有两种方式的窃取方式-一种为PolyOEP方式,尚有一种是伪造化。此功能只能修复前者。
3.不能找到crc校验概况外壳魔难。不外此功能可能防止一种规范的外壳魔难:在跳转到API的指令中追寻E8。
4.它不会解密被加密的部份概况区段。
5.它不会找到序列号,修补试用版等等。
6.假如有附加数据的话,在脱壳后可能会破损。
Bugs:
不能使命在在一些特定的1.10版本下,无意间我会修复的。
留意事变
在脱被Asprotect 2.X呵护的文件时,你可能需要aspr_ide.dll。从aspack.com上取患上它们,假如需要的话,妨碍更正。
××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××
文件剖析:
CodeDoctor.dll 主挨次