Cプログラムの逆コンパイラを探しています。バイナリは32ビットのx86 Linux実行可能ファイルです。 Objdumpは正常に機能するため、基本的に、asmソースからCソースを再構築しようとするものを探しています。
16進数を2番目に使用しますが、そのコストを正当化できない場合は、 Boomerang が機能する可能性があります。
余裕がある場合は、 Hex-Rays Decompiler を使用する価値があります。 :-)
IDAが役立つ限り、かなりの費用がかかります。特定のユースケースについてはわかりませんが、 Plasma は「Plasmaはx86/ARM/MIPS用のインタラクティブな逆アセンブラです。色付きの構文でインデントされた擬似コードを生成できます」というトリックを行うようです。
IDAに似たものを探している場合は、 Radare2 を強くお勧めします。また、 ODA the online dissembler 何かをインストールする気にならない場合のためにあります。
新しい追加機能は Binary Ninja で、IDAやRadareの機能にまだ近いものではありませんが、初心者にとっては安価で優れたユーティリティです。
更新:このコメント以来、NSAはリリースされました Ghidra これは完全にオープンソースで無料です。これは、ハイエンドの逆コンパイラを備えた本格的なREフレームワークです。
バイナリ逆コンパイル用に、Hopper https://www.hopperapp.com の個人ライセンスを購入しました。
利点は次のとおりです。
IMO、コスト/品質の比はIDA/Hex-raysをかなり簡単に破り、他の商用(または無料の)逆コンパイラーをほこりの中に残します。
さらに、試してみるか、デモ版を使用してその感覚をつかみ、無料で(非常に)小さな実行可能ファイルを逆コンパイルできます。
これから(2019年3月)、代替手段として、NSAから Ghidra も取得できます。 Ghidraは、JDK 11がインストールされている限り、Linux、Mac、Windowsで動作します。 「X/Raysに匹敵する無料のツールとして」提供されます。
ギドラはより強力に感じますが、ホッパーはまだより直感的に見えます。
参照: PepperMalwareブログ-NSAのGhidra SREフレームワークを使用したTrickbotサンプルのクイック分析
スノーマン( http://derevenets.com )いいね生成されたコードは混乱していますが、動作します。