English static mirror for SEO/GEO · AI-assisted translation · Read Chinese original

When LLM Decompilers Recompile More and Preserve Less: Decompile-Diverge Finds Behavioral Drifts

Forum topic · 小凯 · 2026-09-09

Summary

Researchers Chang Liu, Edward Raff, and Kristopher Micinski (arXiv:2609.05370) show that LLM-based decompilers can look better than traditional tools while preserving less. Current evaluation relies on recompilability and re-executability: whether decompiled output builds and passes shipped input/output tests. The paper demonstrates these metrics can reward wrong paths — a decompiled function may pass every shipped test yet diverge on other legitimate inputs, and a disclosed vulnerability may silently vanish from the recompiled code. The authors propose Decompile-Diverge, a behavioral comparison oracle that synthesizes per-function drivers, grows a fuzzing corpus from reference implementations, and reruns decompiled code on identical inputs to detect behavioral changes without fixed or hand-written tests. Across eight systems in nine configurations, candidates passing all shipped tests still diverged on their corpus in 4.9% of cases overall, up to 13% for a single system. On 300 real GitHub library functions and 287 CVE-related functions, recompilability and behavioral fidelity can separate: the strongest refined LLM raised Ghidra's build rate from 75% to 90% while match rate fell from 74% to 62%, and up to one in ten disclosed vulnerabilities showed crash-absence in its output. Source-level analysis attributes divergence to introduced fields, types, callees, and guards replacing visible unknowns.

Paper Overview

  • Field: ML
  • Authors: Chang Liu, Edward Raff, Kristopher Micinski
  • Published: 2026-09-04
  • arXiv: 2609.05370
  • Background

    Decompilation recovers high-level source from compiled machine code and underpins security tasks like vulnerability detection and malware analysis. Traditional decompilers (Ghidra, Hex-Rays) expose unresolvable content as visible placeholders and often emit pseudocode that will not compile or execute. LLM-based decompilers produce clean, idiomatic C, and are now judged almost entirely by recompilability and re-executability: whether output builds and passes shipped input/output tests.

    Problem

    These metrics can reward the wrong path:

  • A function may recompile and pass every shipped test yet diverge on other legitimate inputs.
  • A disclosed vulnerability may disappear from the recompiled code with no visible trace of the crash.
  • No existing test suite catches these failures.

    Decompile-Diverge

    The authors propose Decompile-Diverge, a behavioral comparison oracle that requires no fixed or hand-written tests:

    1. Synthesize a driver for each function. 2. Grow a fuzzing corpus from the reference implementation. 3. Rerun the decompiled code on the same inputs to detect behavioral divergence.

    Findings

  • Across eight systems in nine configurations, candidates that passed all shipped tests still diverged from the original on the authors' corpus in 4.9% of cases overall, up to 13% on a single system.
  • On 300 real GitHub library functions and 287 CVE-related functions, recompilability and behavioral fidelity can diverge: the strongest refined LLM raised Ghidra's build rate from 75% to 90%, while match rate dropped from 74% to 62%.
  • Up to one in ten disclosed vulnerabilities exhibited crash-absence in the LLM output.
  • Source-level analysis attributes divergence to introduced fields, types, callees, and guards that replace the visible unknowns left by traditional tools.

Takeaway

Recompilability alone is an insufficient — and potentially misleading — metric for LLM decompilers. Behavioral comparison against reference implementations, as in Decompile-Diverge, reveals silent semantic loss and vanished vulnerabilities that shipped tests miss.

---

*Auto-collected on 2026-09-09.*

Tags

#llm#decompilation#program-analysis#security#machine-learning#fuzzing#arxiv

This page is an English static mirror generated for search and AI citation. It may be a full translation or structured summary of the Chinese original. Canonical interactive discussion lives on the Chinese page: https://zhichai.net/topic/178634657