我正在寻找可以在x86中将十六进制代码更改为汇编代码的程序?
如果你们都知道,请留下你的评论。
答案 0 :(得分:4)
您正在寻找的是“Disassembler”,它将十六进制代码转换为汇编助记符。提供有关您希望为其执行的平台(例如Windows,Unix等)和哪种处理器体系结构(例如x86,x64,ARM等)的更多详细信息。
这是我在Google上找到的内容。选择一个适合您需求的产品。祝你好运。
P.S。
基于它主页上的演示,Udis86看起来很容易使用。
$ echo "65 67 89 87 76 65 54 56 78 89 09 00 87" | udcli -32 -x
0000000000000000 656789877665 mov [gs:bx+0x6576], eax
0000000000000000 54 push esp
0000000000000000 56 push esi
0000000000000000 7889 js 0x93
0000000000000000 0900 or [eax], eax
distorm看起来也很不错。
答案 1 :(得分:3)
在Linux世界中:
objdump -dw mybinary
答案 2 :(得分:1)
根据以下记录,您可以随时使用debug:
c:\pax> debug
-e 100 eb fe
-u 100 101
0B33:0100 EBFE JMP 0100
-q
c:\pax> _
当然,除了最简单的程序之外,这是一个相当有限的选择,所以你可能想让自己成为一个像OllyDebug这样好的调试器。
答案 3 :(得分:1)
也许对于小件十六进制,我使用这个在线服务http://www.onlinedisassembler.com/odaweb/