我正在研究逆向工程,我写了下面的代码,看看在反汇编中如何传递struct变量。
struct s {
int a;
int b;
int c;
};
struct s get_some_values(int a)
{
struct s rt;
rt.a = a + 1;
rt.b = a + 2;
rt.c = a + 3;
return rt;
}
int main()
{
get_some_values(4);
}
环境是:
- 通过此自动安装的所有工具:http : //boxstarter.org/package/url?https : //raw.githubusercontent.com/fireeye/flare-vm/master/flarevm_malware.ps1
- 赢 7 x64 (VM)
- 风袋 x86
- vs2017
- 遵守调试,没有aslr和dep
- 加载可执行文件后,windbg 的命令:
- 0:000> bl
- 0:000> x *!main
- 00411770 返回值!main()
- 0:000> bp 0x00411770
从那以后,在windbg的左角,它的“忙”,并且不响应任何像'g'这样的命令。
知道我现在面临什么吗?提前致谢!
