如何OllyDebug调试Win32汇编程序[原创]

使用OllyDebug来调试Win32汇编程序一般可以分三不走:定位,下断点,跟踪

定位的目的是找到感兴趣的代码段,断点的作用是让程序自动执行到感兴趣的部分后停止执行,跟踪的目的是分析这段代码的具体数据变化情况。

下面就各个步骤详细讲解:

1.怎样定位程序的某一段?
如已知有这么一段程序:
   mov ecx,eax
   xor edx,edx
   mov ebx,3
   div ebx
   sub ecx,eax  
   shr ecx,1 ;ecx conttains real count
按下Ctrl+F ,输入  "mov ecx,eax" ,确定,便可以定位到该段程序了.
一般在一个程序里面会出现多处"mov ecx,eax",第一次找到的不一定是你的目标。继续按Ctrl+L,就可以定位到下一个"mov ecx,eax"处.
显然,这种方法一般很难实现一次定位.因为一条指令的特征并不明显.
幸好,我们可以用Ctrl+S来实现多条连续指令序列得查找.
按下Ctrl+S ,输入 
   mov ebx,3
   div ebx
   sub ecx,eax 
一般只需一次就可以找到目标代码段.

2.怎样下断点?
然后按下F2下断点.下断点处会变红.取消断点只要再次按下F2

3.跟踪
然后用菜单点"运行"(或按F9),程序运行到断点处会自动停下,此时可以按F8一步一步跟踪。
如果不需要步步跟踪,可以点继续运行.

就这么简单.

当然了,OllyDebug得功能远不止这些,这就需要你自己去看帮助咯~

发表评论

邮箱地址不会被公开。 必填项已用*标注