2017年6月1日星期四

OD 1

C2动态分析技术,我已经改用OD2.01版了,有很多好用的帮助,且支持win7

    Ctrl+G:转到某地址!
|[offset address] |ds:[offset address] |调到对应的地址段!
|---|:---:|---:|
|API名(APINameA/W) |跳转至相应API入口地址||
    函数,且系统函数一般都是底层由W版本实现而非ANSI。OD中可以在数据栏中随意跳地址,比如跳到堆栈对应地址(如填写eax即为eax对应的地址,填写esp即为当前栈顶)。
    F2 INT3 断点(双击该行第二列)
    Shift+F2 条件断点
    Ctrl+F 搜索命令(汇编指令)
    Alt+F5 窗口置顶
    Ctrl+N 打开模块的名称列表(标签列表,里面有API函数名,也有你定义的标签名)
    可以在Ctrl+G中输入关键字

  |R8 |任何8位寄存器|
  |---|---:|
  |R16 |任何16位寄存器|
  |R32 |任何32位寄存器|
  |FPU |任何FPU|
  |MMX |任何MMX|
  |CRX |任何控制寄存器CR0.。。CR7|
  |DRX |任何调试寄存器DR0--DR7|
  |CONST |任何常量|
  |OFFSET |==CONST|
  |JCC |任何跳|
  |SETCC |任何条件设置字节|
  |CMOVCC |任何MOV|

    OD 中显示的地址为虚拟地址!!!而非实际内存地址。
    Win7实现原理与XP不同,所以在OD中调试时显示地址是不同的,这其中包含Win7以后更新的版本。
    可以在OD中把没有意义的地址名标记为函数名:“Shift+;”输入函数名即可。
    一个字(WORD)为16位,DWORD为32位
    lea的图示说明:

    OD中数据栏:一行可以表示4*4*2*8=256位,即32个字(字节),16个双字,8个四字,4个8字,即4个32位。

没有评论:

发表评论