【加壳脱壳-ASprotect ver 2.1 / 2.73脱壳笔记】此文章归类为:加壳脱壳。
本帖是关于ASprotect ver 2.1 / 2.73的脱壳过程。在学习的过程中做了些笔记,如果笔记中有错误或者有遗漏的步骤,还是有更好的脱壳方法,欢迎大家在评论区指出!
注:建议使用winXP系统脱壳以免修复IAT时会不成功
1. 先查壳

2. 忽略所有异常

3. 运行到最后一次异常

(通常是两个je和一个jmp)
4. 打开内存映射在下断点,shift+F9运行

5. 来到OEP

6. 用LordPE’修正映像大小’并完整转存
7. 用ImpREC修复

先用等级1再用ASProtect 2.xx修复

修复完之后程序还是运行出错
8. 载入修复完的程序,设置还是要忽略所有异常

9. 把程序运行起来断下来之后,在这里右键‘在反汇编窗口中跟随’

断在这里

就是这个call出了问题,所以需要修复它
先复制这段代码的地址,然后去未脱壳的程序找到相应的这段代码。回车进去

把call里的十六进制地址复制到数据窗口中跟随

去脱完壳的程序那里复制刚才call里的十六进制地址(00444910),去数据窗口中查找

把00441BEC这个地址复制到00444910里。这样这个地址就不会去指向壳的地址就是指向程序的地址

复制成可执行文件。然后继续修复
10. 再次载入修复完的程序。运行起来断这里之后,右键‘在反汇编窗口中跟随’

断在这里之后,找到上面这个call

回车进去也是没有东西,就是要修复它
复制这段代码的地址,去未脱壳的程序找到相应的这段代码,回车进去看是什么东西

回车进去是retn

也去脱壳的程序里找个就近的retn地址
先到444908这个地址,找个就近的retn地址(Ctrl+F查找)

把这个retn地址填到这里

复制成可执行文件。然后继续修复
11. 再次载入修复完的程序。运行起来断这里之后,右键‘在反汇编窗口中跟随’

断在这里之后,找到上面这个call

回车进去也是没有东西,就是要修复它
复制这段代码的地址,去未脱壳的程序找到相应的这段代码,回车进去看是什么东西

回车进去是retn

也去脱壳的程序里找个就近的retn地址
先到44490C这个地址,找个就近的retn地址(Ctrl+F查找)

把这个retn地址填到这里
复制成可执行文件。试运行程序是否能运行


更多【加壳脱壳-ASprotect ver 2.1 / 2.73脱壳笔记】相关视频教程:www.yxfzedu.com