Intraprocedural Static Slicing of Binary Executables

  • Authors:
  • Cristina Cifuentes;Antoine Fraboulet

  • Affiliations:
  • -;-

  • Venue:
  • ICSM '97 Proceedings of the International Conference on Software Maintenance
  • Year:
  • 1997

Quantified Score

Hi-index 0.00

Visualization

Abstract

Program slicing is a technique for determining the set of statements of a program that potentially affect the value of a variable at some point in the program. Intra and interprocedural slicing of high-level languages has greatly been studied in the literature; both static and dynamic techniques have been used to aid in the debugging, maintenance, parallelization, program integration, and dataflow testing of programs. In this paper we explain how to apply conventional intraprocedural static analysis to binary executables, for the purposes of static analysis of machine-code and assembly code, such as debugging code and determining the instructions that affect an indexed jump or an indirect call on a register. This analysis is useful in the decoding of machine instructions phase of reverse engineering tools of binary executables, such as binary translators, disassemblers, binary profilers and binary debuggers.