Monday 18 December 2017

Objdump desmontar arm binário opções


Posso desmontar um arquivo binário plano usando objdump Estou familiarizado com a desmontagem de um executável binário estruturado, como um arquivo ELF usando: Mas se eu tiver um arquivo binário plano que eu sei que é suposto ser carregado em, por exemplo, Endereço 0xabcd1000, posso pedir objdump para desmontá-lo Eu tentei fornecer opções como --start-address0xabcd1000 mas objdump apenas afirma que ele não reconhece o formato. Eu tenho outras idéias sobre como desmontar o arquivo, mas eu queria saber se objdump poderia fornecer uma solução simples. Perguntou Jan 12 13 at 6:21 starblue e hlovdal ambos têm partes da resposta canônica. Se você quiser desmontar o código i8086, você geralmente quer a sintaxe da Intel, não a sintaxe ATampT, também, então use: Se seu código é ELF (ou a. out (ou E) COFF), você pode usar o formulário curto: Para código de 32 bits ou 64 bits, omita o 8086, o cabeçalho ELF já inclui essas informações. Ndisasm. Como sugerido por jameslin. É também uma boa escolha, mas objdump geralmente vem com o sistema operacional e pode lidar com todas as arquiteturas suportadas por GNU binutils (superconjunto daqueles suportados pelo GCC), e sua saída geralmente pode ser alimentado em GNU como (ndisasms geralmente pode ser alimentado nasm Embora, claro). Peter Cordes sugere que Agner Fogs objconv é muito agradável. Ele coloca rótulos em alvos de ramo, tornando muito mais fácil descobrir o que o código faz. Ele pode desmontar NASM, YASM, MASM ou ATampT (GNU) sintaxe. Multimídia Mike já descobriu sobre --adjust-vma o ndisasm equivalente é a opção - o. Para desmontar, digamos, o código sh4 (eu usei um binário do Debian para testar), use isto com GNU binutils (quase todos os outros desassembladores são limitados a uma plataforma, como x86 com ndisasm e objconv): The - m é a máquina, E - EL significa Little Endian (para sh4eb usar - EB em vez), o que é relevante para arquiteturas que existem em qualquer endianness. Respondeu 22 dezembro às 20:48

No comments:

Post a Comment