原代码
004C781D MOV EAX,DWORD PTR DS:[EDX+8C]
004C7823 MOV DWORD PTR DS:[ECX+90],EAX
004C7829 MOV ECX,DWORD PTR SS:[EBP+8] ****
004C782C MOV DL,BYTE PTR SS:[EBP+C] ****
004C782F MOV BYTE PTR DS:[ECX+12],DL **** 没有被修改的3句代码
004C7832 MOV EAX,DWORD PTR SS:[EBP+8]
被修改后的代码
004C781D MOV EAX, DWORD PTR [EDX+8C]
004C7823 MOV DWORD PTR [ECX+90], EAX
004C7829 PUSH EBP *********
004C782A PUSH EAX *********
004C782B CALL DWORD PTR [82D3900] *** 已经被修改的代码
004C7831 NOP ***
004C7832 MOV EAX, DWORD PTR [EBP+8]
现在需要把代码恢复回来 ,都知道直接在 004C7829 的内存地址恢复回来就可以了,
但是004C7829 的地址做了内存的效验 ,所以我没办法在这个地址把代码改回来了
只能在 CALL DWORD PTR [82D3900] 也就是 [82D3900] 内的内存地址的代码里修改回来 ,在这个CALL的调用地址怎么把代码恢复回来???
[培训]《安卓高级研修班(网课)》月薪三万计划,掌握调试、分析还原ollvm、vmp的方法,定制art虚拟机自动化脱壳的方法