LLM4Decompile: Decompiling Binary Code with Large Language Models

要約

逆コンパイルは、コンパイルされたコードを人間が判読できるソース コードに復元することを目的としていますが、名前や構造などの詳細に苦労します。
大規模言語モデル (LLM) はプログラミング タスクに有望であり、アプリケーションを逆コンパイルする動機になります。
ただし、逆コンパイル用のオープンソース LLM は存在しません。
さらに、既存の逆コンパイル評価システムは主にトークンレベルの精度を考慮しており、プログラムの最も重要な機能であるコードの実行可能性をほとんど無視しています。
したがって、40 億トークンの C ソース コードと対応するアセンブリ コードで事前トレーニングされた、1B から 33B までの範囲の最初のオープンアクセス逆コンパイル LLM をリリースします。
オープンソース LLM は、この分野でのさらなる開発のベースラインとして機能します。
実用的なプログラム評価を確実にするために、逆コンパイルの再コンパイル可能性と再実行可能性を考慮した初のデータセットである Decompile-Eval を導入します。
このベンチマークは、プログラム セマンティクスの観点から逆コンパイル モデルを評価することの重要性を強調しています。
実験によると、LLM4Decompile はアセンブリ コードの 21% を正確に逆コンパイルする機能を実証しており、これは GPT-4 よりも 50% の改善を達成しています。
コード、データセット、モデルは https://github.com/albertan017/LLM4Decompile でリリースされています。

要約(オリジナル)

Decompilation aims to restore compiled code to human-readable source code, but struggles with details like names and structure. Large language models (LLMs) show promise for programming tasks, motivating their application to decompilation. However, there does not exist any open-source LLM for decompilation. Moreover, existing decompilation evaluation systems mainly consider token-level accuracy and largely ignore code executability, which is the most important feature of any program. Therefore, we release the first open-access decompilation LLMs ranging from 1B to 33B pre-trained on 4 billion tokens of C source code and the corresponding assembly code. The open-source LLMs can serve as baselines for further development in the field. To ensure practical program evaluation, we introduce Decompile-Eval, the first dataset that considers re-compilability and re-executability for decompilation. The benchmark emphasizes the importance of evaluating the decompilation model from the perspective of program semantics. Experiments indicate that our LLM4Decompile has demonstrated the capability to accurately decompile 21% of the assembly code, which achieves a 50% improvement over GPT-4. Our code, dataset, and models are released at https://github.com/albertan017/LLM4Decompile

arxiv情報

著者 Hanzhuo Tan,Qi Luo,Jing Li,Yuqun Zhang
発行日 2024-03-08 13:10:59+00:00
arxivサイト arxiv_id(pdf)

提供元, 利用サービス

arxiv.jp, Google

カテゴリー: cs.CL, cs.PL パーマリンク