将ARM asm反编译回C

几年前我编写了一个很好的ARM汇编程序,多年来它在其设计的ARM嵌入式系统上完美地完成了它的工作。 现在,现在是将它移植到非ARM系统的时候了,我想知道是否有工具或某种方法来获取我原来的ARM汇编源并从中获取一个rudimentory C文件。 我可以在几天内自己做,但是有一个起点会很好。 如果应用程序或方法是免费的,那就更好了:)

有什么建议?

不幸的是我不知道这样的工具……会很好……; )

因此,我能给出的唯一建议是专注于逻辑。

你写了汇编代码。 所以你知道应该做什么代码。 即使使用ARM程序集,将其转换为C代码也不应该那么难。

我的意思是将C移植到ARM组件可能是一项艰巨的任务。 但是对于反向选项,如果您知道代码逻辑,并且如果您知道如何编写C,那么应该没问题……

创建C结构以简化您正在使用的内存区域。 关于算法,它们不会改变。 在一些结构的帮助下,只需将你从assembly到C的内容翻译成C ……

对不起,我可以给你这样一个工具……

祝好运 : )

IDA Pro的Hex-Rays Decompiler插件可以反编译ARM。 它有点贵,所以如果你只需要一个例程,那么可能不是最好的选择。