Module lief::assembly

Expand description

Assembly/Disassembly Module

Getting Started

One can start disassembling code by using the different functions exposes in the crate::generic::Binary trait:

fn disassemble(target: &dyn lief::generic::Binary) {
    for inst in target.disassemble_symbol("_entrypoint") {
        println!("{}", inst.to_string());
    }
}

An instruction is represented by the enum: Instructions which implements the trait Instruction.

For architecture-dependant API, you can check the following structures:

Modules

  • AArch64 architecture-related namespace
  • ARM architecture-related namespace
  • eBPF architecture-related namespace
  • Module related to assembly instructions
  • Mips architecture-related namespace
  • PowerPC architecture-related namespace
  • RISC-V architecture-related namespace
  • x86/x86-64 architecture-related namespace

Enums

Traits