CapstoneImpl

Encapsulates an architecture-specific instance of the Capstone dissassembly engine

Note that, in contrast to the base class, the architecture is chosen at compile-time.

Constructors

this
this(ModeFlags modeFlags)

Creates an architecture-specific instance with a given mode of interpretation

Members

Functions

disasm
InstructionImpl!archParam[] disasm(ubyte[] code, ulong address, size_t count)
Undocumented in source. Be warned that the author may not have intended to support it.
disasmIter
InstructionImplRange!archParam disasmIter(ubyte[] code, ulong address)
Undocumented in source. Be warned that the author may not have intended to support it.
groupName
string groupName(InstructionGroup!archParam groupId)

Determines friendly name of a group id (that an instruction can belong to)

instrName
string instrName(InstructionId!archParam instrId)

Determines friendly name of an instruction

regName
string regName(Register!archParam regId)

Determines friendly name of a register

Inherited Members

From Capstone

arch
Arch arch;
Undocumented in source.
~this
~this()
Undocumented in source.
create
Capstone create(Arch arch, ModeFlags modeFlags)

Creates a Capstone instance for disassembling code of a specific architecture

mode
auto mode [@property getter]

Gets the mode of interpretation

mode
ModeFlags mode [@property setter]

Sets the mode of interpretation

syntax
auto syntax [@property getter]

Gets the disassembly syntax variant

syntax
Syntax syntax [@property setter]

Sets the disassembly syntax variant

detail
auto detail [@property getter]

Indicates whether instructions will be disassembled in detail

detail
bool detail [@property setter]

Sets whether instructions will be disassembled in detail

skipData
auto skipData [@property getter]

Indicates whether SKIPDATA mode of operation is in use

skipData
bool skipData [@property setter]

Sets whether to use SKIPDATA mode of operation

setupSkipdata
void setupSkipdata(string mnemonic, Callback callback)

Customises behaviour in SKIPDATA mode of operation

disasm
const(Instruction)[] disasm(ubyte[] code, ulong address, size_t count)

Disassemble binary code, given the code buffer, start address and number of instructions to be decoded

disasmIter
InstructionRange disasmIter(ubyte[] code, ulong address)

Provides a range to iteratively disassemble binary code - one instruction at a time

Parameters

archParam

The architecture this Capstone instance is tailored for

Meta