Interface INativeDisassemblerPlugin<InsnType extends IInstruction>

Type Parameters:
InsnType -
All Superinterfaces:
INativePlugin<InsnType>, IPlugin, IUnitPlugin
All Known Implementing Classes:
AbstractNativeDisassemblerPlugin

public interface INativeDisassemblerPlugin<InsnType extends IInstruction> extends INativePlugin<InsnType>
Native disassembler plugins. Decompiler plugins should implement AbstractNativeDisassemblerPlugin.
  • Method Details

    • canBeProcessedOutsideCodeObject

      boolean canBeProcessedOutsideCodeObject()
      Determine when this disassembler knows how to process 'naked' code, not located within a code object.
      Returns:
    • canProcessELF

      boolean canProcessELF(int machineId, boolean isELF64)
      Determine whether this disassembler can handle machine code identified by the provided ELF machine id.
      Parameters:
      machineId -
      isELF64 -
      Returns:
    • canProcessPE

      boolean canProcessPE(int machineId, boolean isPE64)
      Determine whether this disassembler can handle machine code identified by the provided PE/COFF machine id.
      Parameters:
      machineId -
      isPE64 -
      Returns:
    • getProcessorTypes

      List<ProcessorType> getProcessorTypes()
      Provide a list of processor types supported by this plugin's processor. The list must be consistent with the candidate values that the implemented processor may return. The returned list may be empty if the processor does not use a specific type, as may be the case with bytecode parsers.
      Returns:
      a list, possibly empty
    • getProcessor

      IProcessor<InsnType> getProcessor(IUnitCreator parent)
      Parameters:
      parent -
      Returns:
    • getCallingConvention

      ICallingConvention getCallingConvention(IUnitCreator parent)
      Parameters:
      parent -
      Returns:
    • getMemory

      IVirtualMemory getMemory(IUnitCreator parent)
      Parameters:
      parent -
      Returns:
    • getCodeFormatter

      GenericCodeFormatter<InsnType> getCodeFormatter()
      Returns:
    • getAnalyzerExtension

      INativeCodeAnalyzerExtension<InsnType> getAnalyzerExtension()
      Returns: