当前位置: 代码迷 >> 汇编语言 >> 反汇编语言的通译
  详细解决方案

反汇编语言的通译

热度:234   发布时间:2016-05-02 04:25:57.0
反汇编语言的翻译
00F81647  mov         esi,esp  
00F81649  push        4  
00F8164B  mov         eax,dword ptr [i]  
00F8164E  lea         ecx,a[eax*4]  
00F81652  push        ecx  
00F81653  push        0F86870h  
00F81658  call        dword ptr ds:[0F8A110h]  
00F8165E  add         esp,0Ch  
00F81661  cmp         esi,esp  
00F81663  call        __RTC_CheckEsp (0F81140h)  

------解决思路----------------------
最左边一列是指令在载入内存之前所被组织的偏移,第2,3-4列分别是汇编指令、操作数。如果此段汇编是一个子函数,遇到push/pop指令(以及函数参数)画一画函数栈段图可能对程序挑战的理解有帮助。
------解决思路----------------------
保存 esp 到 esi;
准备参数,调用个函数,比较可能是 api 类的;
比较 esp 是否平衡;
再调用 esp 检查函数进行核查。
  相关解决方案