| Min version | 2003/XP64 SP1 |
|---|---|
| Max version | 10 TH2 |
| x64 offset offset:bitpos | Field Name |
| 0x0000 | unsigned long Signature |
| 0x0004 | unsigned long HeapFlags |
| 0x0008 | struct _RTL_CRITICAL_SECTION * HeapCritSect |
| 0x0010 | unsigned long nRemoteLockAcquired |
| 0x0018 | struct _DPH_HEAP_BLOCK * pVirtualStorageListHead |
| 0x0020 | struct _DPH_HEAP_BLOCK * pVirtualStorageListTail |
| 0x0028 | unsigned long nVirtualStorageRanges |
| 0x0030 | uint64_t nVirtualStorageBytes |
| 0x0038 | struct _RTL_AVL_TABLE BusyNodesTable |
| 0x00A0 | struct _DPH_HEAP_BLOCK * NodeToAllocate |
| 0x00A8 | unsigned long nBusyAllocations |
| 0x00B0 | uint64_t nBusyAllocationBytesCommitted |
| 0x00B8 | struct _DPH_HEAP_BLOCK * pFreeAllocationListHead |
| 0x00C0 | struct _DPH_HEAP_BLOCK * pFreeAllocationListTail |
| 0x00C8 | unsigned long nFreeAllocations |
| 0x00D0 | uint64_t nFreeAllocationBytesCommitted |
| 0x00D8 | struct _LIST_ENTRY AvailableAllocationHead |
| 0x00E8 | unsigned long nAvailableAllocations |
| 0x00F0 | uint64_t nAvailableAllocationBytesCommitted |
| 0x00F8 | struct _DPH_HEAP_BLOCK * pUnusedNodeListHead |
| 0x0100 | struct _DPH_HEAP_BLOCK * pUnusedNodeListTail |
| 0x0108 | unsigned long nUnusedNodes |
| 0x0110 | uint64_t nBusyAllocationBytesAccessible |
| 0x0118 | struct _DPH_HEAP_BLOCK * pNodePoolListHead |
| 0x0120 | struct _DPH_HEAP_BLOCK * pNodePoolListTail |
| 0x0128 | unsigned long nNodePools |
| 0x0130 | uint64_t nNodePoolBytes |
| 0x0138 | struct _LIST_ENTRY NextHeap |
| 0x0148 | unsigned long ExtraFlags |
| 0x014C | unsigned long Seed |
| 0x0150 | void * NormalHeap |
| 0x0158 | struct _RTL_TRACE_BLOCK * CreateStackTrace |
| 0x0160 | void * FirstThread |