整理OD一些快捷键和零碎知识点
第一次记录:2019.9.15 完成了近期基本知识点的记录
第二次记录:2019.9.16 更新VB和的Delphi的汇编代码特点
介绍几个快捷键:
Alt+B 断点编辑器,空格键可切换断点状态
ctrl+C 当位于某个call中时,用此快捷键返回调用这个CALL的地方
Alt+F9 当位于系统API领空时,用此快捷键返回程序领空 (小地址一般是可执行文件领空 如:004013F7 ,而大地址一般是系统DLL所在领空 如:7C8114AB)
Ctrl+G 打开跟随表达式窗口
Ctrl+N 打开函数导入表
shift+“ - ”返回上一步
回车键 界面进入call中查看(实际不进入),C返回
介绍几条汇编语言:
mov dest,src 把src中内容拷贝到dest
call xxx 调用函数,实际上就是EIP xxx ,jump xxx 回来 (EIP存放即将要执行的指令)
cmp dest,src 比较dest和src 改变Z/O/C的标志位的值
je jump zero,结果等于0,ZF=1时跳转
jne jump not zero,结果等于1,ZF=0时跳转
xor 异或计算,相同为0,不同为1,常用 xor eax,eax 来将eax的值清零
test eax,eax 如果eax的值为0,则ZF标志位置1
ZF(zero flag)标志位:运算结果为0,ZF=1;
OF溢出标志位:溢出OF则置1
CF进位标志位:CF显示进位值
介绍几个常见的函数:
GetDlgItemTextA/W 读取程序文本编辑框的内容字符串
GetWindowTextA/W 确定是否通过textchange判断
介绍几种编程的汇编语言的特点:
Visual Basic(VB),是一种事件来引发机制的语言, 经常会到高地址的DLL领空中 反复跳
delphi,常见的是pushXXX retnXXX 推入的是地址 retn就相当于 jumpXXX 也是喜欢用到很多的CALL