Zion BasqueがKunaを公開 — ほぼ全てを大規模言語モデル(LLM)で構築したデコンパイラ
そのオープンソースプロジェクトは、ベンチマークの失敗を利用してコーディングエージェントをGhidra、angr、IDA Proに由来する手法へと導く。
By Ryan Merket · Published
Primary source: Noelo Lab
Why it matters
Kuna tests a practical model for agent-built scientific software: experts define metrics and architecture, while coding agents implement and iteratively refine the system.

Zion Leonahenahe Basqueは7月29日にKunaを公開し、ほとんどを大規模言語モデルが書いたと彼が述べる実験的なデコンパイラのコードを開放した。
このプロジェクトは、コーディングエージェントに関する特定の主張を試すBasqueのテストだ。研究者が指標と失敗例でエージェントを指示し、実装の大部分をエージェントに任せることができるかどうかを確認する。彼のリリース投稿で、BasqueはLLMがKunaの「ほぼ全てのコード行を書いた」と述べている。彼の貢献はそのコード生成ループの上流にあり、アーキテクチャの選択、指標の開発、ベンチマークデータの組み立て、エージェントが攻めるべき欠点の決定といった作業に当たる。
その労働分担はBasqueがこのプロジェクトに至る経緯を反映している。彼はArizona State Universityで博士号を取得し、論文「Toward a Science of Software Reverse Engineering」(「ソフトウェアリバースエンジニアリングの科学に向けて」)で、リバースエンジニアリングにはより明確な目標と成功の測定可能な定義が必要だと主張した。博士課程ではangrデコンパイラの主要開発者として活動し、指標がデコンパイラ設計を導く方法を研究した。Noelo LabはBasqueがUniversity of Georgiaで率いる研究所で、正式な開始は8月1日である。
Kunaはその研究アジェンダを実用ツールへと変換する。Basqueは夏の間、Air Force Research Laboratoryで訪問教員研究者を務め、Y Combinatorの2023年夏のバッチ出身のサンフランシスコのファームウェアセキュリティ開発企業であるMetalwareのリサーチフェローを務めながらこれを構築した。KunaはMetalwareの製品ではなく、現時点ではNoelo Labの研究プロジェクトのままである。
A decompiler designed for its own coding agents
デコンパイラは機械語を、人間やソフトウェアエージェントが検査できるより高レベルの表現に変換する。出力はマルウェア解析、脆弱性研究、ソースコードが利用できないプログラムの作業の基盤となる。
Kunaのソースコードは、National Security AgencyのGhidraデコンパイラのRustへの移植として始まった。Basqueはその後、パイプラインをangrや他のデコンパイル研究の考えから再構築した。Apache-2.0のプロジェクトはコマンドライン、WebAssemblyを介したブラウザ内、そしてGhidraのグラフィカルインターフェース内のデコンパイラコアとして動作する。
そのアーキテクチャはエージェントによるさらなる変更を容易にするよう設計されている。パイプライン段階は分離され、重要なアルゴリズムには自然言語による仕様が付され、デコンパイラの機能はランタイムで切り替え可能である。これによりベンチマークが悪い出力を露呈したとき、エージェントの探索空間は小さくなる。エージェントは関連する段階を特定し、文書化された振る舞いを検査し、機能を修正して再度テストを実行できる。
Basqueによれば、その過程によりエージェントはangrのために以前に開発された20以上の機能を再実装することができたという。歴史的な依存関係は重要だ。Kunaは多年にわたる人間主導の研究で生み出された手法(Basque自身の研究を含む)を取り入れ、それらをエージェントによる反復的変更に適したコードベースに梱包している。
プロジェクトのリポジトリは意図された運用モデルを明示している。コーディングエージェントはコードの解析と生成の大部分を実行すると期待されており、人間は設計判断、データセット、プロンプト、受け入れ基準を供給する。Kunaの優先順位は従来のリバースエンジニアリングツールとは異なる:Basqueはソフトウェアエージェントがデコンパイラ出力の主要な消費者になると予想しているため、デコンパイルされたテキストの品質と速度がグラフィカルインターフェースよりも上位に置かれている。
The benchmark result comes with a controlled denominator
Basqueの見出しとなる結果は注目に値するほどには近く、慎重さを要するほどには限定的だ。DecBenchのCプログラム上で、Kunaは関数の44.4%について完全な制御フロー構造化を生成し、これはBasqueのリリース投稿によればIDA Pro 9.2の45.7%と比べての数値である。
制御フロー構造化は、低レベルのジャンプや分岐をループ、条件分岐、スイッチなどの読みやすい構造へどのように再構築するかを決定する。これはデコンパイル品質の一要素だ。Kunaの結果は完全なリバースエンジニアリングシステムとしてIDA Proと同等であることを示すものではなく、Basque自身もそのように提示してはいない。彼は型、最適化、再コンパイル可能性、変数の同定などが依然として大幅な作業を要する分野として挙げている。
ベンチマークもまたBasque自身の研究環境からのものである。DecBenchは自身を実験的で生きたベンチマークであると明示し、バグや特定プロジェクトの過剰な代表が結果に影響を与える可能性を認めている。2026年7月30日時点で、DecBenchは803バイナリ、9つのデコンパイラにまたがる94,575の関数をリストし、3つの指標でスコアを付けている:コード構造、型(引数と変数)、およびバイト一致による再コンパイル可能性。独立した再現が、Kunaの構造化結果がそのセットアップを超えてどれだけ維持されるかを決定するだろう。
それでも、この比較はエージェント主導のエンジニアリングについて有用な何かを示している。エージェントにはKunaがIDA Pro、Ghidra、またはangrに劣る具体的な例が与えられ、試行錯誤を通じて実装を洗練するよう求められた。フィードバックは「改善せよ」という一般的な指示ではなく、測定可能な出力から与えられた。
そのループは困難な人間の作業を開始時点に置く。研究者は品質が何を意味するかを決め、代表的なデータセットを構築し、リバースエンジニアのニーズに対応する指標を特定しなければならない。Basqueの論文と関連研究は、エージェントが有用な変更を開始できる前にそれらの要素を提供した。
Basque is keeping the research loop open
Basqueはangrを自身の作業の中心に据え続けているとも述べている。彼は新しいデコンパイルアルゴリズムを開発するための好ましい環境としてangrを挙げる一方、Kunaはエージェントが確立された手法を吸収し洗練できるかを試験する。関係性は意図的に相互的だ。Kunaは今日angrや他のオープンソース研究に依存しており、Basqueの目標はKunaを通じて生み出された改良が最終的にその研究基盤に還元されることである。
Metalwareはその作業に隣接する商業的な環境を提供する。Metalwareはソースコード、ハードウェア、テストハーネスを必要とせずにファームウェアバイナリを解析し、クラッシュ、スタックトレース、再現可能な入力、根本原因分析を返す。より良い自動デコンパイルは、KunaがMetalwareの製品からは独立しているとはいえ、セキュリティエージェントがテストしているバイナリのより明確な表現を提供し得る。
Kunaの即時的な価値は、Basqueが可視化した実験にある。コード、仕様、テスト構造は、彼がどこでコーディングエージェントに実装作業を任せられると信じ、どこでドメイン専門家が不可欠であると考えているかを示している。初期のベンチマーク結果はその議論に測定可能なチェックポイントを与える。より困難な試練はまだ先にある:エージェントがデコンパイラの成熟していない部分を改善できるか、外部の研究者がその成果を再現できるか、そしてKunaが上流へ送り返す価値のある手法を生産できるかどうか。