几年前我编写了一个很好的 ARM 汇编程序例程,多年来它在其设计的 ARM 嵌入式系统上完美地完成了它的工作。现在,是时候将其移植到非 ARM 系统上了,我想知道是否有工具或某种方法可以获取我原始的 ARM 汇编器源代码并从中获取基本的 C 文件。我可能可以在几天内自己完成,但如果有一个起点那就太好了。如果应用程序或方法是免费的就更好了:)
有什么建议吗?
IDA Pro 的 Hex-Rays Decompiler 插件可以反编译 ARM。它有点贵,所以如果您只需要一种常规,可能不是最好的选择。
不幸的是我不知道这样的工具...那就太好了...; )
所以我能给出的唯一建议就是专注于逻辑。
您编写了汇编代码。所以你知道编码应该做什么。即使使用 ARM 汇编,将其转换为 C 代码也不应该那么困难。
我的意思是,将 C 移植到 ARM 汇编可能是一项艰巨的任务。但对于相反的选项,如果你知道代码逻辑,并且知道如何编写 C,应该就可以了...
创建 C 结构以简化您正在使用的内存区域。关于算法,它们不会改变。只需借助一些结构等,将您正在做的事情从汇编语言转换为 C 语言...
抱歉我能给你这样一个工具...
祝你好运:)
您可以使用radare2反编译插件(
r2dec
),它将asm转换为伪C。但我认为手动转换非常有趣。