30
0

Disassembly as Weighted Interval Scheduling with Learned Weights

Abstract

Disassembly is the first step of a variety of binary analysis and transformation techniques, such as reverse engineering, or binary rewriting. Recent disassembly approaches consist of three phases: an exploration phase, that overapproximates the binary's code; an analysis phase, that assigns weights to candidate instructions or basic blocks; and a conflict resolution phase, that downselects the final set of instructions. We present a disassembly algorithm that generalizes this pattern for a wide range of architectures, namely x86, x64, arm32, and aarch64. Our algorithm presents a novel conflict resolution method that reduces disassembly to weighted interval scheduling.

View on arXiv
@article{flores-montoya2025_2505.01536,
  title={ Disassembly as Weighted Interval Scheduling with Learned Weights },
  author={ Antonio Flores-Montoya and Junghee Lim and Adam Seitz and Akshay Sood and Edward Raff and James Holt },
  journal={arXiv preprint arXiv:2505.01536},
  year={ 2025 }
}
Comments on this paper