Function bad64::disassemble[][src]

pub fn disassemble(
    code: &[u8],
    address: u64
) -> impl Iterator<Item = Result<Instruction, DecodeError>> + '_

Disassemble byte slice

Arguments

  • code - u8 slice to zero or more instructions
  • address - Location of code in memory

Examples

use bad64::{disassemble, Operation};

let mut decoded_iter = disassemble(b"\x1f\x20\x03\xd5", 0x1000);

let decoded = decoded_iter.next().unwrap().unwrap();

assert_eq!(decoded.address(), 0x1000);
assert_eq!(decoded.num_operands(), 0);
assert_eq!(decoded.operation(), Operation::NOP);
assert_eq!(decoded.mnem(), "nop");

assert_eq!(decoded_iter.next(), None);