【发布时间】:2015-09-06 14:35:01
【问题描述】:
我有一些调用函数的 C 代码。我正在 Windows 上的 Visual Studio 中编译此代码。有没有一种直接的方法来查看返回指令(操作码)和返回地址? 我尝试在 Visual Studio 中使用内存窗口,但我只看到我的缓冲区“blie”和一些十六进制解释的内存值。我认为 CC 可能是一个操作码,但我希望有一种方法/软件可以清楚地查看返回指令和返回地址。
#include <stdio.h>
#include <stdlib.h>
int foo(char *);
int main(int argc, char *argv[])
{
if (argc != 1)
return printf("Supply an argument, dude\n");
foo(argv[0]);
return 0;
}
int foo(char *input)
{
unsigned char buffer[600] = "";
printf("Adres: %.8X\n", &buffer);
strcpy(buffer, input);
return 0;
}
【问题讨论】:
-
简而言之,不,没有简单的方法。你需要一个成熟的反汇编程序。