我目前正在尝试从 PE 文件中提取所有操作码。我想知道 Radare2 的“反汇编 N 个字节”的“pd”命令和“反汇编所有可能的操作码(每个字节的字节)”的“pda”命令有什么区别。我应该使用哪个命令从 PE 文件中查找所有操作码?
问问题
83 次
1 回答
0
这取决于所有操作码的含义。x86 1是一种 CISC 架构。并非所有指令都具有相同的大小。
考虑以下字节序列:
55 48 89 e5
对应于
55 push rbp
4889e5 mov rbp, rsp
在 x86 64 位。这就是你得到的pd
(如果你从头开始)。然而,在这个字节序列中还隐藏着另一个操作码,89 e5
即mov ebp, esp
. pdA
也将揭示这一点。
0 55 push rbp
1 4889e5 mov rbp, rsp
2 89e5 mov ebp, esp
3 e5 <invalid>
在pdA
r2 中,总是递增一个字节,试图反汇编一个操作码。
1由于您想分析 PE,我假设您使用 x86_64
于 2020-12-25T17:33:52.260 回答