bad64

Crates.iobad64
lib.rsbad64
version0.9.0
sourcesrc
created_at2021-01-30 08:28:01.404382
updated_at2023-11-30 19:32:38.933207
descriptionRust bindings for Binja's arm64 disassembler
homepage
repositoryhttps://github.com/yrp604/bad64
max_upload_size
id348388
size1,881,163
_yrp (yrp604)

documentation

README

Binja Arm64 Disassembler

Build Status Latest Version Latest Docs

These are bindings to the Binary Ninja arm64 architecture/disassembler plugin.

Note that while Binary Ninja is an (excellent) commercial product, the disassembler is entirely Apache 2 licensed and may be used without a license. To install, just add bad64 as a normal dependency in Cargo.toml.

For more information on how this disassembler was created, see this blogpost by Andrew Lamoureux.

For docs and usage, please see docs.rs and the examples.

$ cargo run --example decode 0x91010420
Instruction {
    address: 0x1000,
    opcode: 0x91010420,
    op: ADD,
    num_operands: 0x3,
    operands: [
        Reg {
            reg: X0,
            arrspec: None,
        },
        Reg {
            reg: X1,
            arrspec: None,
        },
        Imm64 {
            imm: Unsigned(
                0x41,
            ),
            shift: None,
        },
    ],
    flags_set: None,
}
add x0, x1, #0x41
Commit count: 148

cargo fmt