Class LoadConfigDirectory

java.lang.Object
ghidra.app.util.bin.format.pe.LoadConfigDirectory
All Implemented Interfaces:
StructConverter

public class LoadConfigDirectory extends Object implements StructConverter
A class to represent the IMAGE_LOAD_CONFIG_DIRECTORY data structure which is defined in winnt.h.
  • Field Details

  • Method Details

    • getSize

      public int getSize()
      Returns the size (in bytes) of this structure.
      Returns:
      the size (in bytes) of this structure
    • getCriticalSectionDefaultTimeout

      public int getCriticalSectionDefaultTimeout()
      Returns the critical section default time-out value.
      Returns:
      the critical section default time-out value
    • getSeHandlerTable

      public long getSeHandlerTable()
      Returns the safe exception handler table.
      Returns:
      the safe exception handler table
    • getSeHandlerCount

      public long getSeHandlerCount()
      Returns the safe exception handler table count.
      Returns:
      the safe exception handler table count
    • getCfgGuardFlags

      public ghidra.app.util.bin.format.pe.LoadConfigDirectory.GuardFlags getCfgGuardFlags()
      Returns the ControlFlowGuard LoadConfigDirectory.GuardFlags.
      Returns:
      the ControlFlowGuard LoadConfigDirectory.GuardFlags
    • getCfgCheckFunctionPointer

      public long getCfgCheckFunctionPointer()
      Returns the ControlFlowGuard check function pointer address (could be 0 if ControlFlowGuard is not being used).
      Returns:
      the ControlFlowGuard check function pointer address (could be 0 if ControlFlowGuard is not being used)
    • getCfgDispatchFunctionPointer

      public long getCfgDispatchFunctionPointer()
      Returns the ControlFlowGuard dispatch function pointer address (could be 0 if ControlFlowGuard is not being used).
      Returns:
      the ControlFlowGuard dispatch function pointer address (could be 0 if ControlFlowGuard is not being used)
    • getCfgFunctionTablePointer

      public long getCfgFunctionTablePointer()
      Returns the ControlFlowGuard function table function pointer address (could be 0 if ControlFlowGuard is not being used).
      Returns:
      the ControlFlowGuard function table function pointer address (could be 0 if ControlFlowGuard is not being used)
    • getCfgFunctionCount

      public long getCfgFunctionCount()
      Returns the ControlFlowGuard function count (could be 0 if ControlFlowGuard is not being used).
      Returns:
      the ControlFlowGuard function count (could be 0 if ControlFlowGuard is not being used)
    • getGuardAddressIatTableTablePointer

      public long getGuardAddressIatTableTablePointer()
      Returns the ControlFlowGuard IAT table function pointer address (could be 0 if ControlFlowGuard is not being used).
      Returns:
      the ControlFlowGuard IAT table function pointer address (could be 0 if ControlFlowGuard is not being used)
    • getGuardAddressIatTableCount

      public long getGuardAddressIatTableCount()
      Returns the ControlFlowGuard IAT entries count (could be 0 if ControlFlowGuard is not being used).
      Returns:
      the ControlFlowGuard IAT entries count (could be 0 if ControlFlowGuard is not being used)
    • getRfgFailureRoutine

      public long getRfgFailureRoutine()
      Returns the ReturnFlowGuard failure routine address (could be 0 if ReturnFlowGuard is not being used).
      Returns:
      the ReturnFlowGuard failure routine address (could be 0 if ReturnFlowGuard is not being used)
    • getRfgFailureRoutineFunctionPointer

      public long getRfgFailureRoutineFunctionPointer()
      Returns the ReturnFlowGuard failure routine function pointer address (could be 0 if ReturnFlowGuard is not being used).
      Returns:
      the ReturnFlowGuard failure routine function pointer address (could be 0 if ReturnFlowGuard is not being used)
    • getRfgVerifyStackPointerFunctionPointer

      public long getRfgVerifyStackPointerFunctionPointer()
      Returns the ReturnFlowGuard verify stack pointer function pointer address (could be 0 if ReturnFlowGuard is not being used).
      Returns:
      the ReturnFlowGuard verify stack pointer function pointer address (could be 0 if ReturnFlowGuard is not being used)
    • getDynamicRelocationTable

      public ImageDynamicRelocationTable getDynamicRelocationTable()
      Returns the Dynamic Value Relocation Table (could be null if DVRT is not being used).
      Returns:
      the Dynamic Value Relocation Table (could be null if DVRT is not being used)
    • toDataType

      public DataType toDataType() throws DuplicateNameException
      Description copied from interface: StructConverter
      Returns a structure datatype representing the contents of the implementor of this interface.

      For example, given:

      class A {
          int foo;
          double bar;
      }
      

      The return value should be a structure data type with two data type components; an INT and a DOUBLE. The structure should contain field names and, if possible, field comments.

      Specified by:
      toDataType in interface StructConverter
      Returns:
      returns a structure datatype representing the implementor of this interface
      Throws:
      DuplicateNameException - when a datatype of the same name already exists
      See Also: