逆向基础2. C语言数据结构的汇编结构
C语言数据结构的汇编结构
局部变量的分配和访问
| 1 |  | 
已剔除保护代码
| 1 |  | 
可得到局部变量分配的结构如下:
| 类型 | 偏移 | 栈大小 | 汇编 | 
|---|---|---|---|
| byte | 0 | 4 | byte ptr | 
| short | 4 | 4 | word ptr | 
| int | 8 | 4 | dword ptr | 
| long | c | 4 | dword ptr | 
| long long | 10 | 8 | qword ptr | 
访问也是根据栈来的
结构体的分配和访问
| 1 |  | 
| 1 |  | 
可得到结构体分配的结构如下:
| 类型 | 偏移 | 对齐后大小 | 
|---|---|---|
| byte | 28 | 2 | 
| short | 2a | 2 | 
| int | 2c | 4 | 
| long | 30 | 8 | 
| long long | 38 | 8 | 
结构体指针的数据访问
| 1 |  | 
指针的传递
| 1 |  | 
汇编:
| 1 |  | 
逆向基础2. C语言数据结构的汇编结构
https://simonkimi.githubio.io/2024/07/27/逆向基础2-C语言数据结构的汇编结构/