20 unstable releases (8 breaking)
0.9.0 | Nov 30, 2023 |
---|---|
0.7.0 | Nov 14, 2023 |
0.6.0 | Dec 22, 2021 |
0.5.0 | Nov 1, 2021 |
0.2.0 | Mar 31, 2021 |
#733 in Encoding
77 downloads per month
Used in 5 crates
(2 directly)
530KB
3K
SLoC
Contains (ELF exe/lib, 40KB) res/id
Binja Arm64 Disassembler
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
Dependencies
~5–8.5MB
~181K SLoC