od 简单示范

简介: 简单示范

本文要点

  • 什么是OD
  • OD的下载
  • OD的简单使用
  • 实例解析

1.什么是OD

OD是一个动态的反汇编调试工具

它可以将可执行文件的二进制代码转换成汇编指令

2.OD的下载

在吾爱破解上下载OD,贼好用

https://www.52pojie.cn/thread-350397-1-1.html

3.OD的简单使用

F9:运行
F8:单步步过
F7:单步步入 
F2:设置断点
Ctrl + G :输入Windows API函数名 可以定位函数位置

4.实例解析

(1)写一段用vs(其他IDE也是一样的啦)

网络异常,图片无法展示
|

Capture.PNG

(2)找到生成的exe文件(release目录下或者debug目录下)

网络异常,图片无法展示
|

Capture.PNG

(3)打开OD,用OD打开这个exe文件

网络异常,图片无法展示
|

网络异常,图片无法展示
|

2.PNG

网络异常,图片无法展示
|

3.PNG

右上方这个框就是反汇编窗口

(4) 用Ctrl + G 定位MessageBox这个函数

网络异常,图片无法展示
|

4.PNG

网络异常,图片无法展示
|

5.PNG

可以看到我们现在停在了 753FD3F 这一行

这时我们已经到了MessageBox的函数体内了

(5)单步执行程序直到MessageBox返回

我们知道MessageBox是由main函数调用的

所以这个函数返回之后是回到main函数里的


网络异常,图片无法展示
|

5.PNG

75F3FD3F 这一行就是在MessageBox函数体里面

我们按下F2在这里下一个断点

按下F9执行

程序会停在断点这个位置


网络异常,图片无法展示
|

6.PNG

然后按F8(单步步过,遇到call不进去)

一直往下执行


网络异常,图片无法展示
|

7.PNG

可以看到执行到75F3FD52这里时程序弹框了,这是MessageBox函数调用的另一个系统函数

关闭弹窗继续F8

网络异常,图片无法展示
|

8.PNG


程序在 retn 这里返回到了main函数

可以看到 我们之前写的

a = 0x778899;

的汇编代码就在这里

这就是我们的main函数啦



目录
相关文章
|
6月前
|
算法 程序员 编译器
美丽的代码:规范go应用代码注释
【6月更文挑战第30天】本文介绍注释应与代码同步,避免误导,且关键点解释。使用LLVM构建编译器示例展示Go语言规范。注释虽有局限,但在解释复杂逻辑、业务规则时仍有其价值。程序员需平衡注释与代码的关系,创造更优的代码。
1090 0
美丽的代码:规范go应用代码注释
|
7月前
OD修改软件
OD修改软件
89 0
|
7月前
|
编译器 Serverless Go
开心档之 Go 语言常量
开心档之 Go 语言常量
|
Java 测试技术 Go
送给学Go或者转Go同学的一套编码规范
有没有 xd 们是从别的语言转 Go
192 0
送给学Go或者转Go同学的一套编码规范
|
数据采集 定位技术 Python
航线 OD 图制作教程
航线 OD 图制作教程
191 0
|
运维 算法 C语言
2023华为OD机试真题目录,使用C语言进行解答
# 🚀前言 ---- >**本文是[2023华为OD机试真题(C语言)](https://blog.csdn.net/m0_47384542/category_12265421.html?spm=1001.2014.3001.5482)专栏的目录贴(持续更新中......)** >**专栏介绍:<font color="red">定期更新华为OD各个时间阶段的机试真题,每日定时更新,本专栏将使用C语言进行更新解答,包含真题,思路分析,代码参考,欢迎大家订阅学习</font >** ----- ### 🔰题库列表:华为OD机试真题(C语言)
522 0
|
编译器 Serverless Go
开心档之Go 语言常量
常量是一个简单值的标识符,在程序运行时,不会被修改的量。 常量中的数据类型只可以是布尔型、数字型(整数型、浮点型和复数)和字符串型。