objdump

    0热度

    1回答

    我想查看我的简单C应用程序的程序集。所以,我试图使用objdump来生成二进制程序集,并且它会生成大约4.3MB大小的文件,其中103228行汇编代码为。然后,我试图通过向gcc提供-S & -save-temps标志来完成此操作。 我已经使用以下三个命令: 1. arm-linux-gnueabi-objdump -d hello_simple > hello_simple.dump 2. a

    2热度

    1回答

    在我的一个(FWIW,ARM)调试会话期间,我注意到GDB和objdump -S的源交错反汇编输出在一个有趣的方面有所不同:objdump似乎是跳过单个/一组指令和显示生成这些指令的源代码行(指令顺序)。另一方面,GDB反汇编似乎跳过源代码行,并列出从该源代码行生成的所有汇编指令(源订单)。 对于-O0代码,两个程序的输出看起来都是一样的。但是,对于优化的代码,GDB的反汇编更有帮助,因为它将所有

    0热度

    2回答

    你好,我运行pin toll itrace.cpp文件来获取代码的跟踪。 #include <stdio.h> #include "pin.H" FILE * trace; // This function is called before every instruction is executed // and prints the IP VOID printip(VOID *ip

    1热度

    1回答

    我有点奇怪的问题。如果我使用objdump的-d拆卸的ARM二进制它可以解决功能(系统库)的分支指令例如为: 8404: e581e000 str lr, [r1] 8408: e59f0028 ldr r0, [pc, #40] ; 8438 <address_of_message1> 840c: ebffffc1 bl 8318 <[email protected]> 8410: e59

    1热度

    1回答

    由于某些原因,我想强制PLT部分输入一些条目。我已经设法为一些条目做到这一点,但是某些功能从未插入到PLT中。 因此,可以说,我有main.c: int main(){ // some code strcmp(a,b); //suppose a, b strings // more code // suppose that result of strcmp is used, so it w

    0热度

    1回答

    当我在Linux服务器(在大学)上运行objdump -d <program name>我得到如下: [email protected]:~/Downloads/buflab-handout$ objdump -d bufbomb objdump: bufbomb: File truncated 这是怎么回事?

    0热度

    1回答

    调试崩溃时,我有以下objdump输出。我可以将问题的范围缩小到以下函数库函数LanManager::Interface(),但是对于目标代码我没有什么经验可以从objdump输出中获得更多的意义。 下面是该库函数的开始部分。我想知道: 开始地址是否是函数本身的地址? 该函数地址和使用函数的主可执行文件的地址之间的关系是什么? 对此objdump输出中三列的简要说明。 什么是_init?这是功能的

    2热度

    1回答

    我正在写一个使用ptrace(singlestep,getregs,pick_text,opcodes比较等)跟踪所有系统调用和二进制文件(elf)调用的小程序。 到目前为止,我已经成功跟踪系统调用和简单的调用,如用户定义的函数。 但是我没有从我选择的地址获取printf符号的名称,这要感谢ptrace。 我的问题是:对于像printf,strlen等动态链接函数,我如何从elf文件中检索地址中的

    1热度

    1回答

    我是一名汇编程序初学者。我浏览了一个验证通过命令行输入的密码的文件。其中一个部分是下面的部分。我不明白movs拷贝到eax寄存器的事情。我也在使用evans调试器。对发生的事情有一个总体的了解会有所帮助。 <fillpassword>: 804851d: 55 push ebp 804851e: 89 e5 mov ebp,esp 8048520: 8b 45 08

    0热度

    1回答

    我已经安装了libc6和libc6-dbg包。我想要做的是显示与源交错的ld.so的反汇编。我也有放置在chroot glibc的源,在精确的位置到达作为调试符号显示由DW_AT_comp_dir。 有人能告诉我 - 如果可能的话 - 如何输出ld.so库的源交错拆卸吗?我知道我可以使用objdump -S,但我怎么点它以独立的调试符号文件可用?