
IDA、Ghidra、Binary Ninja、Relyzeファイルからラベルを抽出し、x64dbgデータベースにエクスポートします。radare2のメインアドレスも含みます。
このコマンドは、単一の引数として与えられたLSTファイル内のすべてのラベルを抽出します。抽出されたラベルに基づいて、カレントディレクトリにx64dbgデータベースが作成されます。
LSTファイルは、IDAのファイルメニューから生成できます: ファイル生成 -> LSTファイルの作成...
$ lst2x64dbg sample.lst
このコマンドは、単一の引数として与えられたCSVファイル内のすべてのラベルを抽出します。抽出されたラベルに基づいて、カレントディレクトリにx64dbgデータベースが作成されます。イメージベース値を指定する必要があります。
CSVファイルは、Ghidraのウィンドウメニューからシンボルテーブルを選択することで生成できます。
開いたシンボルテーブルウィンドウで、ロケーション列でデータを並べ替えます。次に、外部ロケーションではないすべてのシンボルを選択します。目的のシンボルを選択したら、右クリックして エクスポート -> CSVにエクスポート... を選択します。
注意: 外部ロケーションを選択してしまった場合、それらは無視されます。

このファイルに <module_name>.csv という名前を付けます。
$ ghidra2x64dbg -i 400000 sample.csv
イメージベース値は、CodeBrowserウィンドウの逆アセンブルパネルの最上部で確認できます。これはDOSヘッダの一部です。

Ghidraには、デフォルトでオフになっている分析オプションが1つあり、特定の状況でサンプル内のコードにより多くのラベルを提供できます。このオプションは WindowsPE x86 Propagate External Parameters で、CodeBrowserツールでサンプルを初めて開いたときに表示される分析オプションウィンドウにあります。

このコマンドは、単一の引数として与えられたBinary Ninja bnida JSONファイル内のすべてのラベルを抽出します。抽出されたラベルに基づいて、カレントディレクトリにx64dbgデータベースが作成されます。イメージベース値を指定する必要があります。
Binary Ninjaからbnidaファイルを生成するには、最初に指示に従ってプラグインをインストールする必要があります。
https://zznop.github.io/bnida/
実行可能ファイルをBinary Ninjaにロードしたら、ツールメニューに移動し、bnida: 分析データのエクスポートを選択します。

このファイルに <module_name>.json という名前を付けます。
$ binja2x64dbg -i 400000 sample.json
このコマンドは、単一の引数として与えられたRelyzeによって生成されたx64dbgデータベース内のすべてのラベルを抽出します。抽出されたラベルに基づいて、カレントディレクトリにx64dbgデータベースが作成されます。
Relyzeでx64dbgデータベースを生成するには、実行可能ファイルを開き、コードビューで右クリックしてエクスポートします。

このファイルに <module_name>_relyze.dd32 または <module_name>_relyze.dd64 という名前を付けます。
$ relyze2x64dbg sample_relyze.dd32
両方のコマンドは、radare2が検出したmain()の場所を含めることをサポートするようになりました。次のように、いずれかのコマンドに -r または -main を追加するだけです。
$ lst2x64dbg -r 0x0040a53a sample.lst
CutterのUIまたはradare2コマンドラインからmainの仮想アドレスをコピーして貼り付けるだけです。

これらの各ツールは、以前のツールの実行によって作成されたx64dbgデータベースがないか、カレントディレクトリをチェックします。そのデータベース内で既にラベルが付いているオフセットは、後続のいずれかのツールの実行によって変更されることはありません。言い換えると、各ツールはラベルのリストを拡張しますが、既に存在するラベルを上書きすることはありません。
手動でラベルを作成した場合は、1つの逆アセンブラでのみ作成することをお勧めします。また、その逆アセンブラの出力を、上記のツールのいずれかで最初に処理されるようにしてください。これにより、すべてのカスタムラベルが新しいx64dbgデータベースに確実に存在するようになります。
このソフトウェアの将来のバージョンでは、処理のマージステップで競合を解決する方法が提供される予定です。