我有针对MC68008处理器的ROM转储(.bin文件)。需要将它们转换为高级源代码。我已经找到了将其分解为汇编代码的工具。下一步是将它们转换为C代码。但是我找不到任何有效的工具。我已经尝试了以下反编译器,但均未成功:RecStudio,Boomerang,反编译器0.2.4,带有Hex-Rays的IDA Pro。

评论

来自SO的Crosspost。

@IgorSkochinskystackoverflow.com/questions/16663440/…由于此处已关闭,我们可以将其保持打开状态。在这里是话题。

#1 楼

我认为不存在用于M68K反编译的任何公共工具。您可能需要自己做(编写反编译工具)或手动反编译。

如果值得的话,我建议您尝试为项目编写反编译器:反编译不是很好,它将对您进行手动反编译有很大帮助。也许“恐怖”是一个更好的定义...在我看来,这可能是RE中最繁琐的任务。

评论


是最繁琐的任务之一。尽管令人满意是正确的。我认为最糟糕的是VM逆向工程。

–滚轴
13年5月24日在1:28

也许,但是对我自己来说幸运的是,我只需要做一次,那很容易。

– joxeankoret
13年5月24日在9:55

一位匿名用户将此内容发布为修改内容:“我认为在不具备M68K汇编知识的前提下,与手动反编译代码并行编写反编译器是个好主意。不仅您会更好地了解汇编程序,而且您将完全了解反编译器在每个步骤中所做的工作,从而随着知识的提高而更轻松地进行改进。”

–cb88
2013年6月5日18:30



#2 楼

(从SO重新发布答案)

MicroAPL提供了一个称为Relogix的工具,据称它能够做到:

http://www.microapl.com/asm2c/sample。 html

#3 楼

鉴于Hex-Rays支持x86和ARM处理器系列(在不同版本中),因此Hex-Rays无法反编译这些文件并不奇怪。如果您确实找到了用于反编译该处理器系列代码的工具,则该工具将受到我在此答案中提出的限制。实际上,对于ROM转储,情况将比其中所描述的更加可怕。简而言之,机器代码的反编译不是针对托管语言的指点事件。

#4 楼

后来者在这里回答。我注意到您在上面提到了Decompiler 0.2.4:我是该项目的作者。自您提出这个问题以来,我意识到已经过去了几年。在此期间,对680xx系列的支持得到了很大的改善。当前版本(0.4.5)应该能够反汇编和反编译那些二进制文件。菜单命令File> Open as...应该允许您打开原始二进制文件。长时间停机)。

如果发现任何错误或对改进/功能要求提出建议,请不要犹豫将其添加到问题跟踪器中。