cd /news/artificial-intelligence/kuna-decompiler-development-in-the-a… · home topics artificial-intelligence article
[ARTICLE · art-79039] src=noelo.org ↗ pub= topic=artificial-intelligence verified=true sentiment=· neutral

Kuna: Decompiler Development in the Age of Coding Agents

Kuna, an experimental decompiler developed by visiting faculty researcher at the Air Force Research Lab (AFRL) and research fellow at Metalware, achieves perfect control flow structuring on 44.4% of C program functions in recent benchmarks, compared with IDA Pro 9.2's 45.7%. Nearly every line of code was written by an LLM through autonomous refinement, learning from examples where Kuna underperforms IDA Pro, Ghidra, and the angr decompiler. The project is a Rust port of Ghidra reworked to match angr's pipeline, requiring human-led scientific insight for automatic improvement.

read3 min views1 publishedJul 29, 2026

Today, I’m releasing Kuna, an experimental decompiler I’ve been developing over the summer while working as a visiting faculty researcher at the Air Force Research Lab (AFRL) and a research fellow at Metalware. However, when I say that I have been developing, I should clarify that an LLM has written nearly every line of code in this project.

Yet, as it stands now, this decompiler rivals the industry standard, IDA Pro (9.2), in control flow structuring on C programs: in recent benchmark results, Kuna achieves perfect structuring on 44.4% of functions, compared with IDA’s 45.7%. This was largely achieved through autonomous refinement: the LLM studies examples where it performs worse than IDA Pro on fundamental metrics, which have only emerged over the last few years.

Using this strategy, it can effectively learn how another decompiler solves a hard problem through trial and error. IDA Pro was also not the only decompiler studied in this improvement process. This large refinement experiment also involved Ghidra and the angr decompiler; I spent my entire PhD as a core developer of the latter. This method of learning allowed an LLM to reimplement, in Kuna, more than 20 fundamental features from angr, which took us years to design through scientific advancements in decompilation. I emphasize all of this to clarify that this project is more than just slop: it is a truly experimental approach to developing a scientifically interesting tool that gets better automatically.

A snippet from Kuna and Hex-Rays showing a popular angr switch feature

With all of that said, I also want to acknowledge limitations in this approach and how this work might affect the research community.

First, Kuna is only possible through the decades-long efforts of scientists and engineers advancing decompiler research. Kuna is, in fact, a Rust port of the NSA’s Ghidra, reworked to more closely match angr’s pipeline. That is also why I don’t plan on leaving the angr decompiler any time soon. The angr decompiler is still the first place I go to for developing frontier algorithms in decompilation, simply because it was designed for that.

Kuna, on the other hand, is an experiment in seeing what can be done with high-level scientific feedback alone. At this point, it would be significantly harder to write anything by hand in Kuna. Kuna needs angr (and other open-source research), and my hope is that, after more time, angr will need Kuna (if the experiment is a success).

Second, Kuna requires scientific insight to even begin “automatic” refinement, which likely explains why no other decompiler has done this yet (that I know of). Getting to this point required discovering new fundamental metrics, studying what aligns with human reversing values, and gathering insights over years to understand what data a meaningful benchmark requires. The gist: this is also not automatic research; it requires research led by humans.

Third, and finally, there is still significantly more progress to be made in this decompiler. We are doing well on structuring, but decompilation is more than just structuring! We need to improve types, optimizations, recompilability, variable identification… you get the idea. This is, after all, an experiment to see if it is even possible to achieve all those things within the framework we’re using to develop Kuna. And I (we) could really use your help.

If you are interested in the internals of Kuna, the goals of the project, or how automatic improvement works, go check out the code or wait for a more technical follow-up post. As always, I’d like to acknowledge those who have helped me refine my ideas and push forward the research. My PhD advisors, Fish and Yan, are the biggest sources of inspiration for my research. I am also grateful for the insights from Metalware, AFRL, and the Department of Defense, which help make my research impactful.

See you all at the next checkpoint of the experiment!

── more in #artificial-intelligence 4 stories · sorted by recency
── more on @kuna 3 stories trending now
sponsored brought to you by zahid.host 4,200+ EU-deployed projects
reading about agents? ship yours in a single git push.

Run your AI side-project on zahid.host

EU-based hosting, git-push deploys, automatic HTTPS, no cold starts. Free tier with a custom domain — perfect for shipping the agent you just read about.

$git push zahid main
Live at https://your-agent.zahid.host
Get free account → Pricing
from €0/mo · no card required
LIVE [news/kuna-decompiler-deve…] indexed:0 read:3min 2026-07-29 ·