找到这几个破解点后,重新加载目标程序,去掉anti-debug,在4d862c处下内存写入断点,运行后中断后,跟踪会发现到下面的地方:
0066ef49 8b47 f8 mov eax,dword ptr ds:[edi-8]
0066ef4c 0347 ec add eax,dword ptr ds:[edi-14]
到这里后原程序的代码就全部解压完了。
用lordpe打开后发现这里的代码也同样加密过的,我们又重来一次找出解码处,内存访问断点,断下后,发现解码,当然这里你可直接用他的解码方法来patch上面的地址,我是用解压后修改代码的方法。有解压后修改代码的方法的话发现解出正确的代码后,执行上面的代码之前会经过这里:
0066fd0f 33c0 xor eax,eax
0066fd11 40 inc eax
0066fd12 5b pop ebx