Reimagining Disassembly Interfaces With Visualization: Combining Instruction Tracing and Control Flow With DisViz
Abstract:
In applications where efficiency is critical, developers may examine their compiled binaries, seeking to understand how the compiler transformed their source code and what performance implications that transformation may have. This analysis is challenging due to the vast number of disassembled binary instructions and the many-to-many mappings between them and the source code. These problems are exacerbated as source code size increases, giving the compiler more freedom to map and disperse binary instructions across the disassembly space. Interfaces for disassembly typically display instructions as an unstructured listing or sacrifice the order of execution. We design a new visual interface for disassembly code that combines execution order with control flow structure, enabling analysts to both trace through code and identify familiar aspects of the computation. Central to our approach is a novel layout of instructions grouped into basic blocks that displays a looping structure in an intuitive way. We add to this disassembly representation a unique block-based mini-map that leverages our layout and shows context across thousands of disassembly instructions. Finally, we embed our disassembly visualization in a web-based tool, DisViz, which adds dynamic linking with source code across the entire application. DizViz was developed in collaboration with program analysis experts following design study methodology and was validated through evaluation sessions with ten participants from four institutions. Participants successfully completed the evaluation tasks, hypothesized about compiler optimizations, and noted the utility of our new disassembly view. Our evaluation suggests that our new integrated view helps application developers in understanding and navigating disassembly code.
More Related Videos
08:35Interactive and Visualized Online Experimentation System for Engineering Education and Research
Published on: November 24, 2021
05:47Simulation of a Scaled Assembly Process with Collaboration of a Robotic Arm and Monitoring through a Vision System for Quality Control
Published on: August 29, 2025
Related Concept Videos
Disassembly of Intermediate Filaments
Keratin proteins, found at the cell periphery near cell junctions, undergo a cycle of assembly and disassembly. In Type...
Block Diagram Reduction
The first step in this process is the identification and relocation of a branch point. A branch point, where a...
Woodward–Hoffmann Selection Rules and Microscopic Reversibility
Elements of Block Diagrams
A block diagram typically includes essential elements such as comparators, blocks, and feedback loops. Each of these elements...
Visual System
Once through the pupil, the light passes through the lens, a...
Properties of the z-Transform I
