Files
git.stella-ops.org/publish-platform/StellaOps.BinaryIndex.Disassembly.xml
2026-02-13 02:04:55 +02:00

272 lines
14 KiB
XML

<?xml version="1.0"?>
<doc>
<assembly>
<name>StellaOps.BinaryIndex.Disassembly</name>
</assembly>
<members>
<member name="T:StellaOps.BinaryIndex.Disassembly.DisassemblyOptions">
<summary>
Configuration options for the disassembly service.
</summary>
</member>
<member name="F:StellaOps.BinaryIndex.Disassembly.DisassemblyOptions.SectionName">
<summary>
Configuration section name.
</summary>
</member>
<member name="P:StellaOps.BinaryIndex.Disassembly.DisassemblyOptions.PreferredPluginId">
<summary>
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.
</summary>
</member>
<member name="P:StellaOps.BinaryIndex.Disassembly.DisassemblyOptions.ArchitecturePreferences">
<summary>
Plugin-specific preferences by architecture.
Key: architecture name (e.g., "x86_64", "arm64"), Value: preferred plugin ID.
</summary>
</member>
<member name="P:StellaOps.BinaryIndex.Disassembly.DisassemblyOptions.MaxInstructionsPerRegion">
<summary>
Maximum instruction count to disassemble per region (prevents runaway disassembly).
Default: 1,000,000 instructions.
</summary>
</member>
<member name="T:StellaOps.BinaryIndex.Disassembly.DisassemblyPluginRegistry">
<summary>
Default implementation of the disassembly plugin registry.
</summary>
</member>
<member name="M:StellaOps.BinaryIndex.Disassembly.DisassemblyPluginRegistry.#ctor(System.Collections.Generic.IEnumerable{StellaOps.BinaryIndex.Disassembly.IDisassemblyPlugin},Microsoft.Extensions.Logging.ILogger{StellaOps.BinaryIndex.Disassembly.DisassemblyPluginRegistry})">
<summary>
Creates a new plugin registry with the given plugins.
</summary>
<param name="plugins">The registered plugins.</param>
<param name="logger">Logger instance.</param>
</member>
<member name="P:StellaOps.BinaryIndex.Disassembly.DisassemblyPluginRegistry.Plugins">
<inheritdoc />
</member>
<member name="M:StellaOps.BinaryIndex.Disassembly.DisassemblyPluginRegistry.FindPlugin(StellaOps.BinaryIndex.Disassembly.CpuArchitecture,StellaOps.BinaryIndex.Disassembly.BinaryFormat)">
<inheritdoc />
</member>
<member name="M:StellaOps.BinaryIndex.Disassembly.DisassemblyPluginRegistry.FindPluginsForArchitecture(StellaOps.BinaryIndex.Disassembly.CpuArchitecture)">
<inheritdoc />
</member>
<member name="M:StellaOps.BinaryIndex.Disassembly.DisassemblyPluginRegistry.FindPluginsForFormat(StellaOps.BinaryIndex.Disassembly.BinaryFormat)">
<inheritdoc />
</member>
<member name="M:StellaOps.BinaryIndex.Disassembly.DisassemblyPluginRegistry.GetPlugin(System.String)">
<inheritdoc />
</member>
<member name="T:StellaOps.BinaryIndex.Disassembly.DisassemblyQualityResult">
<summary>
Result of a disassembly operation with quality metrics.
</summary>
</member>
<member name="P:StellaOps.BinaryIndex.Disassembly.DisassemblyQualityResult.Binary">
<summary>
The loaded binary information.
</summary>
</member>
<member name="P:StellaOps.BinaryIndex.Disassembly.DisassemblyQualityResult.Plugin">
<summary>
The plugin that produced this result.
</summary>
</member>
<member name="P:StellaOps.BinaryIndex.Disassembly.DisassemblyQualityResult.CodeRegions">
<summary>
Discovered code regions.
</summary>
</member>
<member name="P:StellaOps.BinaryIndex.Disassembly.DisassemblyQualityResult.Symbols">
<summary>
Discovered symbols/functions.
</summary>
</member>
<member name="P:StellaOps.BinaryIndex.Disassembly.DisassemblyQualityResult.TotalInstructions">
<summary>
Total instructions disassembled across all regions.
</summary>
</member>
<member name="P:StellaOps.BinaryIndex.Disassembly.DisassemblyQualityResult.DecodedInstructions">
<summary>
Successfully decoded instructions count.
</summary>
</member>
<member name="P:StellaOps.BinaryIndex.Disassembly.DisassemblyQualityResult.FailedInstructions">
<summary>
Failed/invalid instruction count.
</summary>
</member>
<member name="P:StellaOps.BinaryIndex.Disassembly.DisassemblyQualityResult.Confidence">
<summary>
Confidence score (0.0-1.0) based on quality metrics.
</summary>
</member>
<member name="P:StellaOps.BinaryIndex.Disassembly.DisassemblyQualityResult.UsedFallback">
<summary>
Whether this result came from a fallback plugin.
</summary>
</member>
<member name="P:StellaOps.BinaryIndex.Disassembly.DisassemblyQualityResult.FallbackReason">
<summary>
Reason for fallback if applicable.
</summary>
</member>
<member name="P:StellaOps.BinaryIndex.Disassembly.DisassemblyQualityResult.DecodeSuccessRate">
<summary>
Decode success rate (DecodedInstructions / TotalInstructions).
</summary>
</member>
<member name="T:StellaOps.BinaryIndex.Disassembly.DisassemblyService">
<summary>
Default implementation of the disassembly service facade.
</summary>
</member>
<member name="M:StellaOps.BinaryIndex.Disassembly.DisassemblyService.#ctor(StellaOps.BinaryIndex.Disassembly.IDisassemblyPluginRegistry,Microsoft.Extensions.Options.IOptions{StellaOps.BinaryIndex.Disassembly.DisassemblyOptions},Microsoft.Extensions.Logging.ILogger{StellaOps.BinaryIndex.Disassembly.DisassemblyService})">
<summary>
Creates a new disassembly service.
</summary>
<param name="registry">The plugin registry.</param>
<param name="options">Service options.</param>
<param name="logger">Logger instance.</param>
</member>
<member name="P:StellaOps.BinaryIndex.Disassembly.DisassemblyService.Registry">
<inheritdoc />
</member>
<member name="M:StellaOps.BinaryIndex.Disassembly.DisassemblyService.LoadBinary(System.IO.Stream,System.String)">
<inheritdoc />
</member>
<member name="M:StellaOps.BinaryIndex.Disassembly.DisassemblyService.LoadBinary(System.ReadOnlySpan{System.Byte},System.String)">
<inheritdoc />
</member>
<member name="T:StellaOps.BinaryIndex.Disassembly.DisassemblyServiceCollectionExtensions">
<summary>
Extension methods for configuring disassembly services.
</summary>
<summary>
Extension methods for configuring hybrid disassembly services.
</summary>
</member>
<member name="M:StellaOps.BinaryIndex.Disassembly.DisassemblyServiceCollectionExtensions.AddDisassemblyServices(Microsoft.Extensions.DependencyInjection.IServiceCollection,Microsoft.Extensions.Configuration.IConfiguration)">
<summary>
Adds the disassembly service infrastructure (registry and service facade).
Use AddXxxDisassemblyPlugin() methods to register actual plugins.
</summary>
<param name="services">The service collection.</param>
<param name="configuration">Optional configuration for binding options.</param>
<returns>The service collection for chaining.</returns>
</member>
<member name="M:StellaOps.BinaryIndex.Disassembly.DisassemblyServiceCollectionExtensions.AddDisassemblyServices(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Action{StellaOps.BinaryIndex.Disassembly.DisassemblyOptions})">
<summary>
Adds the disassembly service infrastructure with options configuration action.
</summary>
<param name="services">The service collection.</param>
<param name="configure">Action to configure options.</param>
<returns>The service collection for chaining.</returns>
</member>
<member name="M:StellaOps.BinaryIndex.Disassembly.DisassemblyServiceCollectionExtensions.AddHybridDisassemblyServices(Microsoft.Extensions.DependencyInjection.IServiceCollection,Microsoft.Extensions.Configuration.IConfiguration)">
<summary>
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.
</summary>
<param name="services">The service collection.</param>
<param name="configuration">Configuration for binding options.</param>
<returns>The service collection for chaining.</returns>
</member>
<member name="M:StellaOps.BinaryIndex.Disassembly.DisassemblyServiceCollectionExtensions.AddHybridDisassemblyServices(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Action{StellaOps.BinaryIndex.Disassembly.HybridDisassemblyOptions},System.Action{StellaOps.BinaryIndex.Disassembly.DisassemblyOptions})">
<summary>
Adds the hybrid disassembly service with configuration actions.
</summary>
<param name="services">The service collection.</param>
<param name="configureHybrid">Action to configure hybrid options.</param>
<param name="configureDisassembly">Optional action to configure standard options.</param>
<returns>The service collection for chaining.</returns>
</member>
<member name="T:StellaOps.BinaryIndex.Disassembly.HybridDisassemblyOptions">
<summary>
Configuration options for hybrid disassembly with fallback logic.
</summary>
</member>
<member name="F:StellaOps.BinaryIndex.Disassembly.HybridDisassemblyOptions.SectionName">
<summary>
Configuration section name.
</summary>
</member>
<member name="P:StellaOps.BinaryIndex.Disassembly.HybridDisassemblyOptions.PrimaryPluginId">
<summary>
Primary plugin ID to try first. If null, auto-selects highest priority plugin.
</summary>
</member>
<member name="P:StellaOps.BinaryIndex.Disassembly.HybridDisassemblyOptions.FallbackPluginId">
<summary>
Fallback plugin ID to use when primary fails quality threshold.
</summary>
</member>
<member name="P:StellaOps.BinaryIndex.Disassembly.HybridDisassemblyOptions.MinConfidenceThreshold">
<summary>
Minimum confidence score (0.0-1.0) required to accept primary plugin results.
If primary result confidence is below this, fallback is attempted.
</summary>
</member>
<member name="P:StellaOps.BinaryIndex.Disassembly.HybridDisassemblyOptions.MinFunctionCount">
<summary>
Minimum function discovery count. If primary finds fewer functions, fallback is attempted.
</summary>
</member>
<member name="P:StellaOps.BinaryIndex.Disassembly.HybridDisassemblyOptions.MinDecodeSuccessRate">
<summary>
Minimum instruction decode success rate (0.0-1.0).
</summary>
</member>
<member name="P:StellaOps.BinaryIndex.Disassembly.HybridDisassemblyOptions.AutoFallbackOnUnsupported">
<summary>
Whether to automatically fallback when primary plugin doesn't support the architecture.
</summary>
</member>
<member name="P:StellaOps.BinaryIndex.Disassembly.HybridDisassemblyOptions.EnableFallback">
<summary>
Whether to enable hybrid fallback logic at all. If false, behaves like standard service.
</summary>
</member>
<member name="P:StellaOps.BinaryIndex.Disassembly.HybridDisassemblyOptions.PluginTimeoutSeconds">
<summary>
Timeout in seconds for each plugin attempt.
</summary>
</member>
<member name="T:StellaOps.BinaryIndex.Disassembly.HybridDisassemblyService">
<summary>
Hybrid disassembly service that implements smart routing between plugins
with quality-based fallback logic (e.g., B2R2 primary -> Ghidra fallback).
</summary>
</member>
<member name="M:StellaOps.BinaryIndex.Disassembly.HybridDisassemblyService.#ctor(StellaOps.BinaryIndex.Disassembly.IDisassemblyPluginRegistry,Microsoft.Extensions.Options.IOptions{StellaOps.BinaryIndex.Disassembly.HybridDisassemblyOptions},Microsoft.Extensions.Logging.ILogger{StellaOps.BinaryIndex.Disassembly.HybridDisassemblyService})">
<summary>
Creates a new hybrid disassembly service.
</summary>
<param name="registry">The plugin registry.</param>
<param name="options">Hybrid options.</param>
<param name="logger">Logger instance.</param>
</member>
<member name="P:StellaOps.BinaryIndex.Disassembly.HybridDisassemblyService.Registry">
<inheritdoc />
</member>
<member name="M:StellaOps.BinaryIndex.Disassembly.HybridDisassemblyService.LoadBinary(System.IO.Stream,System.String)">
<inheritdoc />
</member>
<member name="M:StellaOps.BinaryIndex.Disassembly.HybridDisassemblyService.LoadBinary(System.ReadOnlySpan{System.Byte},System.String)">
<inheritdoc />
</member>
<member name="M:StellaOps.BinaryIndex.Disassembly.HybridDisassemblyService.LoadBinaryWithQuality(System.ReadOnlySpan{System.Byte},System.String)">
<summary>
Loads binary with quality assessment and returns detailed quality result.
</summary>
<param name="bytes">The binary data.</param>
<param name="preferredPluginId">Optional preferred plugin ID.</param>
<returns>A quality result with metrics and fallback info.</returns>
</member>
</members>
</doc>