Jump to content

Process Environment Block

From Wikipedia, the free encyclopedia
This is an old revision of this page, as edited by Geohot (talk | contribs) at 23:31, 2 August 2008 ( Created page with 'In computing the '''Process Environment Block''' is a data structure in Win32 on x86 that stores information about the currently running process. This...'). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.
(diff) ← Previous revision | Latest revision (diff) | Newer revision → (diff)

In computing the Process Environment Block is a data structure in Win32 on x86 that stores information about the currently running process.

This is pointed to by the TIB+0x30

Contents of the PEB

  +0x000 InheritedAddressSpace : UChar
  +0x001 ReadImageFileExecOptions : UChar
  +0x002 BeingDebugged    : UChar
  +0x003 BitField         : UChar
  +0x003 ImageUsesLargePages : Pos 0, 1 Bit
  +0x003 IsProtectedProcess : Pos 1, 1 Bit
  +0x003 IsLegacyProcess  : Pos 2, 1 Bit
  +0x003 IsImageDynamicallyRelocated : Pos 3, 1 Bit
  +0x003 SkipPatchingUser32Forwarders : Pos 4, 1 Bit
  +0x003 SpareBits        : Pos 5, 3 Bits
  +0x004 Mutant           : Ptr32 Void
  +0x008 ImageBaseAddress : Ptr32 Void
  +0x00c Ldr              : Ptr32 _PEB_LDR_DATA
  +0x010 ProcessParameters : Ptr32 _RTL_USER_PROCESS_PARAMETERS
  +0x014 SubSystemData    : Ptr32 Void
  +0x018 ProcessHeap      : Ptr32 Void
  +0x01c FastPebLock      : Ptr32 _RTL_CRITICAL_SECTION
  +0x020 AtlThunkSListPtr : Ptr32 Void
  +0x024 IFEOKey          : Ptr32 Void
  +0x028 CrossProcessFlags : Uint4B
  +0x028 ProcessInJob     : Pos 0, 1 Bit
  +0x028 ProcessInitializing : Pos 1, 1 Bit
  +0x028 ProcessUsingVEH  : Pos 2, 1 Bit
  +0x028 ProcessUsingVCH  : Pos 3, 1 Bit
  +0x028 ReservedBits0    : Pos 4, 28 Bits
  +0x02c KernelCallbackTable : Ptr32 Void
  +0x02c UserSharedInfoPtr : Ptr32 Void
  +0x030 SystemReserved   : [1] Uint4B
  +0x034 SpareUlong       : Uint4B
  +0x038 SparePebPtr0     : Uint4B
  +0x03c TlsExpansionCounter : Uint4B
  +0x040 TlsBitmap        : Ptr32 Void
  +0x044 TlsBitmapBits    : [2] Uint4B
  +0x04c ReadOnlySharedMemoryBase : Ptr32 Void
  +0x050 HotpatchInformation : Ptr32 Void
  +0x054 ReadOnlyStaticServerData : Ptr32 Ptr32 Void
  +0x058 AnsiCodePageData : Ptr32 Void
  +0x05c OemCodePageData  : Ptr32 Void
  +0x060 UnicodeCaseTableData : Ptr32 Void
  +0x064 NumberOfProcessors : Uint4B
  +0x068 NtGlobalFlag     : Uint4B
  +0x070 CriticalSectionTimeout : _LARGE_INTEGER
  +0x078 HeapSegmentReserve : Uint4B
  +0x07c HeapSegmentCommit : Uint4B
  +0x080 HeapDeCommitTotalFreeThreshold : Uint4B
  +0x084 HeapDeCommitFreeBlockThreshold : Uint4B
  +0x088 NumberOfHeaps    : Uint4B
  +0x08c MaximumNumberOfHeaps : Uint4B
  +0x090 ProcessHeaps     : Ptr32 Ptr32 Void
  +0x094 GdiSharedHandleTable : Ptr32 Void
  +0x098 ProcessStarterHelper : Ptr32 Void
  +0x09c GdiDCAttributeList : Uint4B
  +0x0a0 LoaderLock       : Ptr32 _RTL_CRITICAL_SECTION
  +0x0a4 OSMajorVersion   : Uint4B
  +0x0a8 OSMinorVersion   : Uint4B
  +0x0ac OSBuildNumber    : Uint2B
  +0x0ae OSCSDVersion     : Uint2B
  +0x0b0 OSPlatformId     : Uint4B
  +0x0b4 ImageSubsystem   : Uint4B
  +0x0b8 ImageSubsystemMajorVersion : Uint4B
  +0x0bc ImageSubsystemMinorVersion : Uint4B
  +0x0c0 ActiveProcessAffinityMask : Uint4B
  +0x0c4 GdiHandleBuffer  : [34] Uint4B
  +0x14c PostProcessInitRoutine : Ptr32     void
  +0x150 TlsExpansionBitmap : Ptr32 Void
  +0x154 TlsExpansionBitmapBits : [32] Uint4B
  +0x1d4 SessionId        : Uint4B
  +0x1d8 AppCompatFlags   : _ULARGE_INTEGER
  +0x1e0 AppCompatFlagsUser : _ULARGE_INTEGER
  +0x1e8 pShimData        : Ptr32 Void
  +0x1ec AppCompatInfo    : Ptr32 Void
  +0x1f0 CSDVersion       : _UNICODE_STRING
  +0x1f8 ActivationContextData : Ptr32 _ACTIVATION_CONTEXT_DATA
  +0x1fc ProcessAssemblyStorageMap : Ptr32 _ASSEMBLY_STORAGE_MAP
  +0x200 SystemDefaultActivationContextData : Ptr32 _ACTIVATION_CONTEXT_DATA
  +0x204 SystemAssemblyStorageMap : Ptr32 _ASSEMBLY_STORAGE_MAP
  +0x208 MinimumStackCommit : Uint4B
  +0x20c FlsCallback      : Ptr32 _FLS_CALLBACK_INFO
  +0x210 FlsListHead      : _LIST_ENTRY
  +0x218 FlsBitmap        : Ptr32 Void
  +0x21c FlsBitmapBits    : [4] Uint4B
  +0x22c FlsHighIndex     : Uint4B
  +0x230 WerRegistrationData : Ptr32 Void
  +0x234 WerShipAssertPtr : Ptr32 Void