设置软件断点:F2
运行程序:F9
单步步入:F7
单步步过:F8
运行到光标处:F4
如果说我们分析的时候,在反汇编窗口中看到一个地址,想查看这个位置的内存:
右键》数据窗口中跟随
如果说想在反汇编窗口查看一个代码:
右键》反汇编窗口中跟随
如果说我们想搜索指令:
右键-查找-命令
搜索所有字符串:
可以使用OD的中文搜索引擎插件,是一个快速便捷的查看字符串的方式。 需要处于所在的模块当中,再去搜索
断点: 软件断点:F2 在B窗口中可以看到所有的软件断点,方便的禁用和启用断点
硬件断点
在代码段上右键,可以设置硬件执行
在数据段上右键,可以设置硬件访问和硬件写入。
我们可以在:调试》硬件断点中看到我们设置过的硬件断点。
内存断点:
用的时候并不太多
可以设置:读 写 执行
条件断点:
消息断点:
必须将目标位置事先指定为回调函数的原型:
之后在此位置点击右键,就可以设置消息断点: 使得程序可以在触发某一种消息的时候中断下来。
查看堆栈:
[ebp-8] 局部变量的区域
[ebp-4] 局部变量的区域
[ebp] 上一个函数的
ebp [ebp+4] 返回地址
[ebp+8] 第一个参数
有两个重要的用处:
-
1 分析 参数与局部变量
-
2 能够查看到调用关系,回溯出整个的调用链。
通常分析程序的一般步骤:
1 运行一下程序,找到我们感兴趣的功能,然后搜集信息