用peid扫描,然后用od打开,pushad的意思是把所有的寄存器压入栈,压入栈之后在esp的位置下一个断点,目的是保存完寄存器环境继续断点执行:(alt+B:查看所有断点)
vs编写的壳的OEP的位置基本上都是xx11D2,所以在这里dump:
进入OEP的call里面,找到opcode为FF15的位置,这里就是IAT表:
dump完修复的时候注意要修改OEP的值
遇到这种问题,就去010editor里面关闭随机基址,方法如下图:
将40 81改成 00 81 保存关闭