StellaOps.BinaryIndex.Disassembly
Configuration options for the disassembly service.
Configuration section name.
The preferred plugin ID to use for disassembly when multiple plugins are available.
If not set, the plugin with the highest priority for the given architecture/format is used.
Plugin-specific preferences by architecture.
Key: architecture name (e.g., "x86_64", "arm64"), Value: preferred plugin ID.
Maximum instruction count to disassemble per region (prevents runaway disassembly).
Default: 1,000,000 instructions.
Default implementation of the disassembly plugin registry.
Creates a new plugin registry with the given plugins.
The registered plugins.
Logger instance.
Result of a disassembly operation with quality metrics.
The loaded binary information.
The plugin that produced this result.
Discovered code regions.
Discovered symbols/functions.
Total instructions disassembled across all regions.
Successfully decoded instructions count.
Failed/invalid instruction count.
Confidence score (0.0-1.0) based on quality metrics.
Whether this result came from a fallback plugin.
Reason for fallback if applicable.
Decode success rate (DecodedInstructions / TotalInstructions).
Default implementation of the disassembly service facade.
Creates a new disassembly service.
The plugin registry.
Service options.
Logger instance.
Extension methods for configuring disassembly services.
Extension methods for configuring hybrid disassembly services.
Adds the disassembly service infrastructure (registry and service facade).
Use AddXxxDisassemblyPlugin() methods to register actual plugins.
The service collection.
Optional configuration for binding options.
The service collection for chaining.
Adds the disassembly service infrastructure with options configuration action.
The service collection.
Action to configure options.
The service collection for chaining.
Adds the hybrid disassembly service with fallback logic between plugins.
This replaces the standard disassembly service with a hybrid version that
automatically falls back to secondary plugins when primary quality is low.
The service collection.
Configuration for binding options.
The service collection for chaining.
Adds the hybrid disassembly service with configuration actions.
The service collection.
Action to configure hybrid options.
Optional action to configure standard options.
The service collection for chaining.
Configuration options for hybrid disassembly with fallback logic.
Configuration section name.
Primary plugin ID to try first. If null, auto-selects highest priority plugin.
Fallback plugin ID to use when primary fails quality threshold.
Minimum confidence score (0.0-1.0) required to accept primary plugin results.
If primary result confidence is below this, fallback is attempted.
Minimum function discovery count. If primary finds fewer functions, fallback is attempted.
Minimum instruction decode success rate (0.0-1.0).
Whether to automatically fallback when primary plugin doesn't support the architecture.
Whether to enable hybrid fallback logic at all. If false, behaves like standard service.
Timeout in seconds for each plugin attempt.
Hybrid disassembly service that implements smart routing between plugins
with quality-based fallback logic (e.g., B2R2 primary -> Ghidra fallback).
Creates a new hybrid disassembly service.
The plugin registry.
Hybrid options.
Logger instance.
Loads binary with quality assessment and returns detailed quality result.
The binary data.
Optional preferred plugin ID.
A quality result with metrics and fallback info.