Class ImageLoadConfigDirectory
The ImageLoadConfigDirectory hold information important to load the PE file correctly.
Implements
Namespace: PeNet.Header.Pe
Assembly: PeNet.dll
Syntax
public class ImageLoadConfigDirectory : AbstractStructure
  Constructors
| Improve this Doc View SourceImageLoadConfigDirectory(IRawFile, Int64, Boolean)
Create a new ImageLoadConfigDirectory object.
Declaration
public ImageLoadConfigDirectory(IRawFile peFile, long offset, bool is64Bit)
  Parameters
| Type | Name | Description | 
|---|---|---|
| IRawFile | peFile | A PE file.  | 
      
| System.Int64 | offset | Offset of the structure in the buffer.  | 
      
| System.Boolean | is64Bit | Flag if the PE file is 64 Bit.  | 
      
Properties
| Improve this Doc View SourceCodeIntegrity
Declaration
public IMAGE_LOAD_CONFIG_CODE_INTEGRITY CodeIntegrity { get; }
  Property Value
| Type | Description | 
|---|---|
| IMAGE_LOAD_CONFIG_CODE_INTEGRITY | 
CriticalSectionDefaultTimeout
Default time-out value for critical sections.
Declaration
public uint CriticalSectionDefaultTimeout { get; set; }
  Property Value
| Type | Description | 
|---|---|
| System.UInt32 | 
CSDVersion
Service pack version.
Declaration
public ushort CSDVersion { get; set; }
  Property Value
| Type | Description | 
|---|---|
| System.UInt16 | 
DeCommitFreeBlockThreshold
The size of the minimum block that has to be freed before it's freed in bytes.
Declaration
public ulong DeCommitFreeBlockThreshold { get; set; }
  Property Value
| Type | Description | 
|---|---|
| System.UInt64 | 
DeCommitTotalFreeThreshold
SIze of the minimum total heap memory that has to be freed before it is freed in bytes.
Declaration
public ulong DeCommitTotalFreeThreshold { get; set; }
  Property Value
| Type | Description | 
|---|---|
| System.UInt64 | 
EditList
Reserved for use by the operating system.
Declaration
public ulong EditList { get; set; }
  Property Value
| Type | Description | 
|---|---|
| System.UInt64 | 
GlobalFlagsClear
GLobal flags to control system behavior.
Declaration
public uint GlobalFlagsClear { get; set; }
  Property Value
| Type | Description | 
|---|---|
| System.UInt32 | 
GlobalFlagsSet
Global flags to control system behavior.
Declaration
public uint GlobalFlagsSet { get; set; }
  Property Value
| Type | Description | 
|---|---|
| System.UInt32 | 
GuardCFCheckFunctionPointer
Control flow guard (Win 8.1 and up) function pointer.
Declaration
public ulong GuardCFCheckFunctionPointer { get; set; }
  Property Value
| Type | Description | 
|---|---|
| System.UInt64 | 
GuardCFFunctionCount
Count of functions under control flow guard. Only on Win 8.1 and up.
Declaration
public ulong GuardCFFunctionCount { get; set; }
  Property Value
| Type | Description | 
|---|---|
| System.UInt64 | 
GuardCFFunctionTable
Pointer to the control flow guard function table. Only on Win 8.1 and up.
Declaration
public ulong GuardCFFunctionTable { get; set; }
  Property Value
| Type | Description | 
|---|---|
| System.UInt64 | 
GuardFlags
Flags for the control flow guard. Only on Win 8.1 and up.
Declaration
public uint GuardFlags { get; set; }
  Property Value
| Type | Description | 
|---|---|
| System.UInt32 | 
LoadConfig
Declaration
public IMAGE_LOAD_CONFIG_DIRECTORY32 LoadConfig { get; }
  Property Value
| Type | Description | 
|---|---|
| IMAGE_LOAD_CONFIG_DIRECTORY32 | 
LoadConfig64
Declaration
public IMAGE_LOAD_CONFIG_DIRECTORY64 LoadConfig64 { get; }
  Property Value
| Type | Description | 
|---|---|
| IMAGE_LOAD_CONFIG_DIRECTORY64 | 
LockPrefixTable
Virtual Address of a list with addresses where the LOCK prefix is used. Will be replaced by NOP instructions on single-processor systems. Only available on x86.
Declaration
public ulong LockPrefixTable { get; set; }
  Property Value
| Type | Description | 
|---|---|
| System.UInt64 | 
MajorVesion
Major version number.
Declaration
public ushort MajorVesion { get; set; }
  Property Value
| Type | Description | 
|---|---|
| System.UInt16 | 
MaximumAllocationSize
The maximum allocation size in bytes. Only used for debugging purposes.
Declaration
public ulong MaximumAllocationSize { get; set; }
  Property Value
| Type | Description | 
|---|---|
| System.UInt64 | 
MinorVersion
Minor version number.
Declaration
public ushort MinorVersion { get; set; }
  Property Value
| Type | Description | 
|---|---|
| System.UInt16 | 
PePtr
return IRawFile to support parsing PE information from the third software
Declaration
public IRawFile PePtr { get; }
  Property Value
| Type | Description | 
|---|---|
| IRawFile | 
ProcessAffinityMask
The processor affinity mask defines on which CPU the executable should run.
Declaration
public ulong ProcessAffinityMask { get; set; }
  Property Value
| Type | Description | 
|---|---|
| System.UInt64 | 
ProcessHeapFlags
The process heap flags.
Declaration
public uint ProcessHeapFlags { get; set; }
  Property Value
| Type | Description | 
|---|---|
| System.UInt32 | 
Reserved1
Reserved for use by the operating system.
Declaration
public ushort Reserved1 { get; set; }
  Property Value
| Type | Description | 
|---|---|
| System.UInt16 | 
Reserved2
Reserved
Declaration
public ulong Reserved2 { get; set; }
  Property Value
| Type | Description | 
|---|---|
| System.UInt64 | 
SecurityCoockie
Pointer to a cookie used by Visual C++ or GS implementation.
Declaration
public ulong SecurityCoockie { get; set; }
  Property Value
| Type | Description | 
|---|---|
| System.UInt64 | 
SEHandlerCount
Count of unique exception handlers in the table. Only available on x86.
Declaration
public ulong SEHandlerCount { get; set; }
  Property Value
| Type | Description | 
|---|---|
| System.UInt64 | 
SEHandlerTable
Virtual Address of a sorted table of RVAs of each valid and unique handler in the image. Only available on x86.
Declaration
public ulong SEHandlerTable { get; set; }
  Property Value
| Type | Description | 
|---|---|
| System.UInt64 | 
Size
SIze of the ImageLoadConfigDirectory structure.
Declaration
public uint Size { get; set; }
  Property Value
| Type | Description | 
|---|---|
| System.UInt32 | 
TimeDateStamp
Time and date stamp. Shows seconds elapsed since 00:00:00, January 1, 1970 in UCT.
Declaration
public uint TimeDateStamp { get; set; }
  Property Value
| Type | Description | 
|---|---|
| System.UInt32 | 
VirtualMemoryThreshold
The maximum block size that can be allocated from heap segments in bytes.
Declaration
public ulong VirtualMemoryThreshold { get; set; }
  Property Value
| Type | Description | 
|---|---|
| System.UInt64 | 
Methods
| Improve this Doc View SourceDispose()
Declaration
public void Dispose()
  Finalize()
Declaration
protected void Finalize()