CapstoneBuilder

class CapstoneBuilder(architecture: Architecture, mode: BitField<Mode>)(source)

Builder for configuring and creating a Capstone disassembly engine.

Provides a DSL-style API for configuration.

Example usage:

val engine = CapstoneBuilder(Architecture.ARM64, Mode.LITTLE_ENDIAN)
.apply {
detail = true
syntax = Syntax.DEFAULT
skipData = false
}
.build()

// Or using the convenience method:
val engine = CapstoneEngine.build(Architecture.X86, Mode.MODE_64) {
detail = true
syntax = Syntax.INTEL
unsigned = true
}

Constructors

Link copied to clipboard
constructor(architecture: Architecture, mode: BitField<Mode>)

Properties

Link copied to clipboard

Enable or disable detailed instruction information.

Link copied to clipboard

Set LITBASE register value for Xtensa architecture.

Link copied to clipboard

For branch instructions, only print the offset without adding to PC.

Link copied to clipboard

Enable or disable SKIPDATA mode.

Link copied to clipboard

Set assembly syntax style (Intel, AT&T, MASM, etc.)

Link copied to clipboard

Print immediate operands in unsigned form.

Functions

Link copied to clipboard

Build the configured Capstone engine.

Link copied to clipboard
inline fun withDetail(configure: CapstoneBuilder.() -> Unit = {}): CapstoneBuilder

Configure detail mode with a lambda.

Link copied to clipboard
fun withSkipData(enabled: Boolean = true): CapstoneBuilder

Configure skipdata mode.

Link copied to clipboard
fun withSyntax(syntaxStyle: Syntax): CapstoneBuilder

Configure syntax.

Link copied to clipboard
fun withUnsigned(enabled: Boolean = true): CapstoneBuilder

Configure unsigned mode.