忽略所有异常....然后用he GetModuleHandleA+5下断.,,,,SHIFT+F9跑起来...按2-3次注意堆栈变化啊....
看到VirtualAlloc....这个虚拟内存管理函数就要注意米西米西了啊.....停一下...
继续SHIFT+F9.....看到VirtualFree了吧???是不是要米西米西啊???停着....
再按一下SHIFT+F9....OK.....kernel32.dll出现在堆栈中了....嘿嘿...我米西米西米西....
ALT+F9..返回.........
接着....看下面啊...一个JMP后面接了两个je???是不是2个?还是3个?管他呢....咱改第一个.呵呵....MAGIC跳...
把je改JMP...嘎嘎....F8单步过去.....跳了没?跳了就继续往下看........
什么?你忘记改了没跳?去撞死好啦...呵呵
跳了以后别动了.别跑了.....然后反汇编窗口往上走....刚刚你改成JMP那里....鼠标拖动,把红色的那几行全部选中..
然后点右键.撤销此处更改...嘎嘎.....你不改回来.穿山甲就检测到了.哈哈.
OK...我们回到你暂停的位置...然后取消掉断点....继续下新的断点....:bp CreateThread...回车...然后F9跑~~~~~
OD.断下来了.在系统领空....F2取消断点....ALT+F9返回吧....嘎嘎...
快到OEP了..别急,慢慢来.嘿嘿...
F8单步一直走啊走啊走啊走.....千万要注意CALL...遇到CALL你就给我停下...
眼睛尖一点喔....发现了CALL EAX没?还是CALL ECX???我也忘记了...反正是CALL了一个寄存器...
慢....
你是不是发现有2个CALL寄存器???
OK..放心,第一个是不会执行的,会直接跳过...会跑去第二个CALL寄存器的...别F8了老大...F7进去吧...OEP到了....
米西米西.......用OD DUMP...方式1和方式2都试试..然后再用LOADPE去DUMP....好像OD DUMP的不用修复,直接运行了.呵呵....
我也是菜鸟....只是正好晚上无聊...回复你一下...希望你能手脱....我写的乱七八糟.也没有代码....如果你能理解.你就肯定可以成功手脱...如果理解不了...那就对不起啊小弟的表达水平也就这个样范了..呵呵....
看不懂的兄弟们.还是看看2楼闪电狼发的脱壳机吧...脱壳机记得修改参数...不要用默认的....下面那3个沟沟必须要打上.不打上不成功....如果还不行,就把下面改成00080000....
好了..我要去看书了...看WIN32汇编...大家有玩WIN32汇编的加我QQ...大家一起米西米西.....
本人QQ:100000059!!!!!
[ 本帖最后由 方程 于 2007-12-23 20:25 编辑 ]