逆向基础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语言数据结构的汇编结构/