Skip to main content
U.S. Department of Energy
Office of Scientific and Technical Information

Using modularity to segment binary code

Technical Report ·
DOI:https://doi.org/10.2172/1664640· OSTI ID:1664640
 [1];  [1]
  1. Sandia National Lab. (SNL-NM), Albuquerque, NM (United States)

We consider the problem of recovering program structure from compiled binary code. We first extract the call graph and layout of functions in memory from the compiled code and represent this information in a graphical format. We then employ Louvain's modularity algorithm to identify clusters of functions that are considered to be related. We find that the quality and properties of clusters extracted by our technique are greatly impacted by the relative importance we assign to the call graph and the ordering of functions in memory.

Research Organization:
Sandia National Laboratories (SNL-NM), Albuquerque, NM (United States)
Sponsoring Organization:
USDOE Laboratory Directed Research and Development (LDRD) Program; USDOE National Nuclear Security Administration (NNSA)
DOE Contract Number:
AC04-94AL85000; NA0003525
OSTI ID:
1664640
Report Number(s):
SAND--2020-9494; 690685
Country of Publication:
United States
Language:
English

Similar Records

Scaling and Quality of Modularity Optimization Methods for Graph Clustering
Conference · Wed Sep 25 00:00:00 EDT 2019 · OSTI ID:1580597

Distributed Louvain Algorithm for Graph Community Detection
Conference · Tue May 22 00:00:00 EDT 2018 · OSTI ID:1526306

Properties of the Graph Modularity Matrix and its Applications
Technical Report · Wed Jun 26 00:00:00 EDT 2019 · OSTI ID:1529818

Related Subjects