BlackBone
Windows memory hacking library
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros
NativeStructs.h
Go to the documentation of this file.
1 #pragma once
2 
3 #include "PEStructs.h"
4 
5 #ifdef _WIN81_
6 #include "NativeStructs81.h"
7 #elif _WIN8_
8 #include "NativeStructs8.h"
9 #elif _WIN7_
10 #include "NativeStructs7.h"
11 #else
12 #error Unsupported OS build version
13 #endif
14 
15 
16 typedef union _PS_PROTECTION
17 {
18  UCHAR Level;
19  struct
20  {
21  int Type : 3;
22  int Audit : 1;
23  int Signer : 4;
24  } Flags;
26 
27 typedef union _KEXECUTE_OPTIONS
28 {
29  struct
30  {
31  int ExecuteDisable : 1;
32  int ExecuteEnable : 1;
34  int Permanent : 1;
38  int Spare : 1;
39  } Flags;
40 
43 
44 typedef union _EXHANDLE
45 {
46  struct
47  {
48  int TagBits : 2;
49  int Index : 30;
50  } u;
52  ULONG_PTR Value;
54 
55 #pragma warning(disable : 4214 4201)
56 
57 
58 typedef struct _HANDLE_TABLE_ENTRY // Size=16
59 {
60  union
61  {
62  ULONG_PTR VolatileLowValue; // Size=8 Offset=0
63  ULONG_PTR LowValue; // Size=8 Offset=0
64  struct _HANDLE_TABLE_ENTRY_INFO * InfoTable; // Size=8 Offset=0
65  struct
66  {
67  ULONG_PTR Unlocked : 1; // Size=8 Offset=0 BitOffset=0 BitCount=1
68  ULONG_PTR RefCnt : 16; // Size=8 Offset=0 BitOffset=1 BitCount=16
69  ULONG_PTR Attributes : 3; // Size=8 Offset=0 BitOffset=17 BitCount=3
70  ULONG_PTR ObjectPointerBits : 44; // Size=8 Offset=0 BitOffset=20 BitCount=44
71  };
72  };
73  union
74  {
75  ULONG_PTR HighValue; // Size=8 Offset=8
76  struct _HANDLE_TABLE_ENTRY * NextFreeHandleEntry; // Size=8 Offset=8
77  union _EXHANDLE LeafHandleValue; // Size=8 Offset=8
78  struct
79  {
80  ULONG GrantedAccessBits : 25; // Size=4 Offset=8 BitOffset=0 BitCount=25
81  ULONG NoRightsUpgrade : 1; // Size=4 Offset=8 BitOffset=25 BitCount=1
82  ULONG Spare : 6; // Size=4 Offset=8 BitOffset=26 BitCount=6
83  };
84  };
85  ULONG TypeInfo; // Size=4 Offset=12
87 
88 
89 typedef struct _HANDLE_TABLE_FREE_LIST // Size=64
90 {
91  void* FreeListLock; // Size=8 Offset=0
92  struct _HANDLE_TABLE_ENTRY * FirstFreeHandleEntry; // Size=8 Offset=8
93  struct _HANDLE_TABLE_ENTRY * LastFreeHandleEntry; // Size=8 Offset=16
94  long HandleCount; // Size=4 Offset=24
95  ULONG HighWaterMark; // Size=4 Offset=28
96  ULONG Reserved[8]; // Size=32 Offset=32
98 
99 
100 typedef struct _HANDLE_TABLE // Size=128
101 {
102  ULONG NextHandleNeedingPool; // Size=4 Offset=0
103  long ExtraInfoPages; // Size=4 Offset=4
104  LONG_PTR TableCode; // Size=8 Offset=8
105  struct _EPROCESS * QuotaProcess; // Size=8 Offset=16
106  struct _LIST_ENTRY HandleTableList; // Size=16 Offset=24
107  ULONG UniqueProcessId; // Size=4 Offset=40
108  union
109  {
110  ULONG Flags; // Size=4 Offset=44
111  struct
112  {
113  UCHAR StrictFIFO : 1; // Size=1 Offset=44 BitOffset=0 BitCount=1
114  UCHAR EnableHandleExceptions : 1; // Size=1 Offset=44 BitOffset=1 BitCount=1
115  UCHAR Rundown : 1; // Size=1 Offset=44 BitOffset=2 BitCount=1
116  UCHAR Duplicated : 1; // Size=1 Offset=44 BitOffset=3 BitCount=1
117  } u1;
118  } u2;
119  void* HandleContentionEvent; // Size=8 Offset=48
120  void* HandleTableLock; // Size=8 Offset=56
121  union
122  {
123  struct _HANDLE_TABLE_FREE_LIST FreeLists[1]; // Size=64 Offset=64
124  struct
125  {
126  UCHAR ActualEntry[32]; // Size=32 Offset=64
127  struct _HANDLE_TRACE_DEBUG_INFO * DebugInfo; // Size=8 Offset=96
128  } u3;
129  } u4;
131 
132 
133 typedef struct _OBJECT_HEADER // Size=56
134 {
135  ULONG_PTR PointerCount; // Size=8 Offset=0
136  union
137  {
138  ULONG_PTR HandleCount; // Size=8 Offset=8
139  void * NextToFree; // Size=8 Offset=8
140  };
141  void* Lock; // Size=8 Offset=16
142  UCHAR TypeIndex; // Size=1 Offset=24
143  union
144  {
145  UCHAR TraceFlags; // Size=1 Offset=25
146  struct
147  {
148  UCHAR DbgRefTrace : 1; // Size=1 Offset=25 BitOffset=0 BitCount=1
149  UCHAR DbgTracePermanent : 1; // Size=1 Offset=25 BitOffset=1 BitCount=1
150  };
151  };
152  UCHAR InfoMask; // Size=1 Offset=26
153  union
154  {
155  UCHAR Flags; // Size=1 Offset=27
156  struct
157  {
158  UCHAR NewObject : 1; // Size=1 Offset=27 BitOffset=0 BitCount=1
159  UCHAR KernelObject : 1; // Size=1 Offset=27 BitOffset=1 BitCount=1
160  UCHAR KernelOnlyAccess : 1; // Size=1 Offset=27 BitOffset=2 BitCount=1
161  UCHAR ExclusiveObject : 1; // Size=1 Offset=27 BitOffset=3 BitCount=1
162  UCHAR PermanentObject : 1; // Size=1 Offset=27 BitOffset=4 BitCount=1
163  UCHAR DefaultSecurityQuota : 1; // Size=1 Offset=27 BitOffset=5 BitCount=1
164  UCHAR SingleHandleEntry : 1; // Size=1 Offset=27 BitOffset=6 BitCount=1
165  UCHAR DeletedInline : 1; // Size=1 Offset=27 BitOffset=7 BitCount=1
166  };
167  };
168  ULONG Spare; // Size=4 Offset=28
169  union
170  {
171  struct _OBJECT_CREATE_INFORMATION * ObjectCreateInfo; // Size=8 Offset=32
172  void * QuotaBlockCharged; // Size=8 Offset=32
173  };
174  void * SecurityDescriptor; // Size=8 Offset=40
175  struct _QUAD Body; // Size=8 Offset=48
177 
179 {
180  PVOID BaseAddress;
183  SIZE_T RegionSize;
184  ULONG State;
185  ULONG Protect;
186  ULONG Type;
188 
190 {
191  ULONG Length;
193  ULONG limits[2];
195 
197 {
198  LARGE_INTEGER KernelTime;
199  LARGE_INTEGER UserTime;
200  LARGE_INTEGER CreateTime;
201  ULONG WaitTime;
203  CLIENT_ID ClientId;
204  KPRIORITY Priority;
207  ULONG ThreadState;
208  KWAIT_REASON WaitReason;
210 
212 {
215  CLIENT_ID ClientId;
216  ULONG_PTR AffinityMask;
217  LONG Priority;
220 
221 typedef struct _SYSTEM_PROCESS_INFO
222 {
225  LARGE_INTEGER WorkingSetPrivateSize;
228  ULONGLONG CycleTime;
229  LARGE_INTEGER CreateTime;
230  LARGE_INTEGER UserTime;
231  LARGE_INTEGER KernelTime;
232  UNICODE_STRING ImageName;
233  KPRIORITY BasePriority;
236  ULONG HandleCount;
237  ULONG SessionId;
238  ULONG_PTR UniqueProcessKey;
240  SIZE_T VirtualSize;
251  LARGE_INTEGER ReadOperationCount;
252  LARGE_INTEGER WriteOperationCount;
253  LARGE_INTEGER OtherOperationCount;
254  LARGE_INTEGER ReadTransferCount;
255  LARGE_INTEGER WriteTransferCount;
256  LARGE_INTEGER OtherTransferCount;
259 
260 #pragma warning(disable : 4214)
261 typedef struct _MMPTE_HARDWARE64
262 {
263  ULONGLONG Valid : 1;
264  ULONGLONG Dirty1 : 1;
265  ULONGLONG Owner : 1;
266  ULONGLONG WriteThrough : 1;
267  ULONGLONG CacheDisable : 1;
268  ULONGLONG Accessed : 1;
269  ULONGLONG Dirty : 1;
270  ULONGLONG LargePage : 1;
271  ULONGLONG Global : 1;
272  ULONGLONG CopyOnWrite : 1;
273  ULONGLONG Unused : 1;
274  ULONGLONG Write : 1;
275  ULONGLONG PageFrameNumber : 36;
276  ULONGLONG reserved1 : 4;
277  ULONGLONG SoftwareWsIndex : 11;
278  ULONGLONG NoExecute : 1;
280 
281 typedef struct _MMPTE
282 {
283  union
284  {
285  ULONG_PTR Long;
287  } u;
288 } MMPTE;
289 typedef MMPTE *PMMPTE;
290 
291 #pragma warning(default : 4214)
292 
294 {
295  ULONG Attribute; // PROC_THREAD_ATTRIBUTE_XXX
296  SIZE_T Size;
297  ULONG_PTR Value;
298  ULONG Unknown;
300 
302 {
303  ULONG Length;
306 
307 
309 {
310  HANDLE Section; // Not filled in
311  PVOID MappedBase;
312  PVOID ImageBase;
313  ULONG ImageSize;
314  ULONG Flags;
317  USHORT LoadCount;
319  UCHAR FullPathName[256];
321 
322 typedef struct _RTL_PROCESS_MODULES
323 {
327 
328 #pragma warning(disable : 4214)
330 {
331  ULONG_PTR Flags;
332  struct
333  {
334  ULONG_PTR Valid : 1;
335  ULONG_PTR ShareCount : 3;
336  ULONG_PTR Win32Protection : 11;
337  ULONG_PTR Shared : 1;
338  ULONG_PTR Node : 6;
339  ULONG_PTR Locked : 1;
340  ULONG_PTR LargePage : 1;
341  ULONG_PTR Reserved : 7;
342  ULONG_PTR Bad : 1;
343 
344 #if defined(_WIN64)
345  ULONG_PTR ReservedUlong : 32;
346 #endif
347  };
349 
351 {
355 
356 #pragma warning(default : 4214)
357 
358 
359 typedef struct _PEB_LDR_DATA
360 {
361  ULONG Length;
362  UCHAR Initialized;
363  PVOID SsHandle;
368 
369 typedef struct _LDR_DATA_TABLE_ENTRY
370 {
371  LIST_ENTRY InLoadOrderLinks;
372  LIST_ENTRY InMemoryOrderLinks;
374  PVOID DllBase;
375  PVOID EntryPoint;
376  ULONG SizeOfImage;
377  UNICODE_STRING FullDllName;
378  UNICODE_STRING BaseDllName;
379  ULONG Flags;
380  USHORT LoadCount;
381  USHORT TlsIndex;
382  LIST_ENTRY HashLinks;
385 
386 
387 typedef struct _PEB
388 {
389  UCHAR Reserved1[2];
391  UCHAR Reserved2[1];
392  PVOID Reserved3[2];
393  PPEB_LDR_DATA Ldr;
395 } PEB, *PPEB;
396 
397 typedef struct _PEB_LDR_DATA32
398 {
399  ULONG Length;
400  UCHAR Initialized;
401  ULONG SsHandle;
402  LIST_ENTRY32 InLoadOrderModuleList;
406 
408 {
409  LIST_ENTRY32 InLoadOrderLinks;
410  LIST_ENTRY32 InMemoryOrderLinks;
412  ULONG DllBase;
413  ULONG EntryPoint;
414  ULONG SizeOfImage;
415  UNICODE_STRING32 FullDllName;
416  UNICODE_STRING32 BaseDllName;
417  ULONG Flags;
418  USHORT LoadCount;
419  USHORT TlsIndex;
420  LIST_ENTRY32 HashLinks;
423 
424 typedef struct _PEB32
425 {
426  UCHAR Reserved1[2];
428  UCHAR Reserved2[1];
429  ULONG Mutant;
431  ULONG Ldr;
433 } PEB32, *PPEB32;
434 
435 typedef union _WOW64_APC_CONTEXT
436 {
437  struct
438  {
441  };
442 
444 
446 
447 
448 typedef struct _NON_PAGED_DEBUG_INFO
449 {
450  USHORT Signature;
451  USHORT Flags;
452  ULONG Size;
453  USHORT Machine;
456  ULONG CheckSum;
457  ULONG SizeOfImage;
458  ULONGLONG ImageBase;
460 
462 {
463  LIST_ENTRY InLoadOrderLinks;
466  // ULONG padding on IA64
467  PVOID GpValue;
468  PNON_PAGED_DEBUG_INFO NonPagedDebugInfo;
469  PVOID DllBase;
470  PVOID EntryPoint;
471  ULONG SizeOfImage;
472  UNICODE_STRING FullDllName;
473  UNICODE_STRING BaseDllName;
474  ULONG Flags;
475  USHORT LoadCount;
476  USHORT __Unused5;
478  ULONG CheckSum;
479  // ULONG padding on IA64
ULONGLONG reserved1
Definition: NativeStructs.h:276
struct _HANDLE_TABLE_FREE_LIST * PHANDLE_TABLE_FREE_LIST
int Spare
Definition: NativeStructs.h:38
Definition: NativeStructs.h:261
struct _HANDLE_TABLE * PHANDLE_TABLE
union _HANDLE_TABLE::@11 u2
struct _HANDLE_TABLE_ENTRY_INFO * InfoTable
Definition: NativeStructs.h:64
ULONG Spare
Definition: NativeStructs.h:168
struct _PEB_LDR_DATA * PPEB_LDR_DATA
union _MEMORY_WORKING_SET_EX_BLOCK * PMEMORY_WORKING_SET_EX_BLOCK
LIST_ENTRY InMemoryOrderLinks
Definition: NativeStructs.h:372
LIST_ENTRY32 InInitializationOrderModuleList
Definition: NativeStructs.h:404
LARGE_INTEGER CreateTime
Definition: NativeStructs.h:200
struct _HANDLE_TABLE HANDLE_TABLE
LONG_PTR TableCode
Definition: NativeStructs.h:104
PVOID LoadedImports
Definition: NativeStructs.h:480
Definition: NativeStructs.h:44
UCHAR PermanentObject
Definition: NativeStructs.h:162
LIST_ENTRY InLoadOrderModuleList
Definition: NativeStructs.h:364
struct _PEB32 PEB32
struct _NT_PROC_THREAD_ATTRIBUTE_LIST * PNT_PROC_THREAD_ATTRIBUTE_LIST
int Type
Definition: NativeStructs.h:21
ULONG_PTR HighValue
Definition: NativeStructs.h:75
ULONGLONG Dirty1
Definition: NativeStructs.h:264
Definition: NativeStructs.h:350
USHORT LoadCount
Definition: NativeStructs.h:317
UCHAR TypeIndex
Definition: NativeStructs.h:142
PVOID EntryPoint
Definition: NativeStructs.h:470
ULONG NumberOfModules
Definition: NativeStructs.h:324
struct _HANDLE_TABLE_FREE_LIST FreeLists[1]
Definition: NativeStructs.h:123
MMPTE * PMMPTE
Definition: NativeStructs.h:289
void * SecurityDescriptor
Definition: NativeStructs.h:174
PPEB_LDR_DATA Ldr
Definition: NativeStructs.h:393
struct _KLDR_DATA_TABLE_ENTRY KLDR_DATA_TABLE_ENTRY
union _EXHANDLE EXHANDLE
ULONGLONG CopyOnWrite
Definition: NativeStructs.h:272
Definition: NativeStructs.h:424
struct _KLDR_DATA_TABLE_ENTRY * PKLDR_DATA_TABLE_ENTRY
void * GenericHandleOverlay
Definition: NativeStructs.h:51
ULONG ThreadState
Definition: NativeStructs.h:207
ULONG_PTR Value
Definition: NativeStructs.h:52
struct _PEB32 * PPEB32
struct _NON_PAGED_DEBUG_INFO * PNON_PAGED_DEBUG_INFO
HANDLE UniqueProcessId
Definition: NativeStructs.h:234
ULONG_PTR Reserved
Definition: NativeStructs.h:341
struct _HANDLE_TABLE_ENTRY * LastFreeHandleEntry
Definition: NativeStructs.h:93
Definition: NativeStructs.h:322
MEMORY_WORKING_SET_EX_BLOCK VirtualAttributes
Definition: NativeStructs.h:353
LIST_ENTRY InInitializationOrderModuleList
Definition: NativeStructs.h:366
SIZE_T PagefileUsage
Definition: NativeStructs.h:248
HANDLE InheritedFromUniqueProcessId
Definition: NativeStructs.h:235
LIST_ENTRY32 InLoadOrderModuleList
Definition: NativeStructs.h:402
struct _KEXECUTE_OPTIONS::@1 Flags
Definition: NativeStructs.h:58
int Index
Definition: NativeStructs.h:49
struct _HANDLE_TABLE_FREE_LIST HANDLE_TABLE_FREE_LIST
void * HandleContentionEvent
Definition: NativeStructs.h:119
ULONG Ldr
Definition: NativeStructs.h:431
ULONG Length
Definition: NativeStructs.h:361
USHORT OffsetToFileName
Definition: NativeStructs.h:318
USHORT Flags
Definition: NativeStructs.h:451
CLIENT_ID ClientId
Definition: NativeStructs.h:203
ULONGLONG SoftwareWsIndex
Definition: NativeStructs.h:277
struct _LIST_ENTRY HandleTableList
Definition: NativeStructs.h:106
PVOID DllBase
Definition: NativeStructs.h:469
ULONG_PTR AffinityMask
Definition: NativeStructs.h:216
struct _MMPTE_HARDWARE64 * PMMPTE_HARDWARE64
ULONG TypeInfo
Definition: NativeStructs.h:85
LIST_ENTRY32 HashLinks
Definition: NativeStructs.h:420
USHORT Machine
Definition: NativeStructs.h:453
UCHAR DbgTracePermanent
Definition: NativeStructs.h:149
PVOID SectionPointer
Definition: NativeStructs.h:477
SIZE_T PeakWorkingSetSize
Definition: NativeStructs.h:242
ULONGLONG Valid
Definition: NativeStructs.h:263
int TagBits
Definition: NativeStructs.h:48
UCHAR BeingDebugged
Definition: NativeStructs.h:390
struct _LDR_DATA_TABLE_ENTRY32 LDR_DATA_TABLE_ENTRY32
UCHAR InfoMask
Definition: NativeStructs.h:152
struct _HANDLE_TABLE_ENTRY * NextFreeHandleEntry
Definition: NativeStructs.h:76
Definition: NativeStructs.h:448
ULONG limits[2]
Definition: NativeStructs.h:193
Definition: NativeStructs.h:301
int DisableThunkEmulation
Definition: NativeStructs.h:33
LONG BasePriority
Definition: NativeStructs.h:205
union _PS_PROTECTION PS_PROTECTION
LIST_ENTRY32 InInitializationOrderLinks
Definition: NativeStructs.h:411
UCHAR Initialized
Definition: NativeStructs.h:362
struct _RTL_PROCESS_MODULE_INFORMATION RTL_PROCESS_MODULE_INFORMATION
void * FreeListLock
Definition: NativeStructs.h:91
SIZE_T PeakVirtualSize
Definition: NativeStructs.h:239
union _MEMORY_WORKING_SET_EX_BLOCK MEMORY_WORKING_SET_EX_BLOCK
HANDLE Section
Definition: NativeStructs.h:310
LARGE_INTEGER WriteOperationCount
Definition: NativeStructs.h:252
Definition: NativeStructs.h:100
ULONG CheckSum
Definition: NativeStructs.h:478
UNICODE_STRING32 FullDllName
Definition: NativeStructs.h:415
PVOID GpValue
Definition: NativeStructs.h:467
LIST_ENTRY InMemoryOrderModuleList
Definition: NativeStructs.h:365
ULONG_PTR Value
Definition: NativeStructs.h:297
ULONG Protect
Definition: NativeStructs.h:185
ULONG HandleCount
Definition: NativeStructs.h:236
struct _SYSTEM_CALL_COUNT_INFORMATION * PSYSTEM_CALL_COUNT_INFORMATION
struct _SYSTEM_CALL_COUNT_INFORMATION SYSTEM_CALL_COUNT_INFORMATION
ULONG_PTR UniqueProcessKey
Definition: NativeStructs.h:238
USHORT LoadOrderIndex
Definition: NativeStructs.h:315
ULONGLONG LargePage
Definition: NativeStructs.h:270
typedef NTSTATUS(NTAPI *fnNtCreateThreadEx)(OUT PHANDLE hThread
ULONG NextHandleNeedingPool
Definition: NativeStructs.h:102
ULONG HighWaterMark
Definition: NativeStructs.h:95
ULONGLONG Global
Definition: NativeStructs.h:271
struct _LDR_DATA_TABLE_ENTRY LDR_DATA_TABLE_ENTRY
CLIENT_ID ClientId
Definition: NativeStructs.h:215
Definition: NativeStructs.h:221
UNICODE_STRING32 BaseDllName
Definition: NativeStructs.h:416
struct _RTL_PROCESS_MODULES * PRTL_PROCESS_MODULES
UCHAR Duplicated
Definition: NativeStructs.h:116
void * QuotaBlockCharged
Definition: NativeStructs.h:172
struct _NON_PAGED_DEBUG_INFO NON_PAGED_DEBUG_INFO
UCHAR KernelObject
Definition: NativeStructs.h:159
union _EXHANDLE * PEXHANDLE
ULONG Flags
Definition: NativeStructs.h:110
ULONG TimeDateStamp
Definition: NativeStructs.h:383
LONG BasePriority
Definition: NativeStructs.h:218
UCHAR ExclusiveObject
Definition: NativeStructs.h:161
ULONG Mutant
Definition: NativeStructs.h:429
struct _MEMORY_BASIC_INFORMATION MEMORY_BASIC_INFORMATION
ULONG SizeOfImage
Definition: NativeStructs.h:414
ULONG_PTR RefCnt
Definition: NativeStructs.h:68
int Audit
Definition: NativeStructs.h:22
struct _SYSTEM_THREAD_INFORMATION * PSYSTEM_THREAD_INFORMATION
struct _NT_PROC_THREAD_ATTRIBUTE_ENTRY NT_PROC_THREAD_ATTRIBUTE_ENTRY
union _WOW64_APC_CONTEXT * PWOW64_APC_CONTEXT
ULONG Type
Definition: NativeStructs.h:186
UCHAR ExecuteOptions
Definition: NativeStructs.h:41
UCHAR ActualEntry[32]
Definition: NativeStructs.h:126
struct _PS_PROTECTION::@0 Flags
ULONGLONG WriteThrough
Definition: NativeStructs.h:266
union _WOW64_APC_CONTEXT WOW64_APC_CONTEXT
PVOID VirtualAddress
Definition: NativeStructs.h:352
union _MMPTE::@27 u
Definition: NativeStructs.h:178
USHORT __Unused5
Definition: NativeStructs.h:476
ULONG_PTR Flags
Definition: NativeStructs.h:331
SIZE_T RegionSize
Definition: NativeStructs.h:183
Definition: NativeStructs.h:329
ULONGLONG ImageBase
Definition: NativeStructs.h:458
USHORT Signature
Definition: NativeStructs.h:450
RTL_PROCESS_MODULE_INFORMATION Modules[1]
Definition: NativeStructs.h:325
UCHAR TraceFlags
Definition: NativeStructs.h:145
UNICODE_STRING BaseDllName
Definition: NativeStructs.h:473
LARGE_INTEGER UserTime
Definition: NativeStructs.h:230
PVOID AllocationBase
Definition: NativeStructs.h:181
Definition: NativeStructs.h:397
ULONG_PTR Bad
Definition: NativeStructs.h:342
USHORT InitOrderIndex
Definition: NativeStructs.h:316
SIZE_T QuotaPeakPagedPoolUsage
Definition: NativeStructs.h:244
ULONG_PTR Unlocked
Definition: NativeStructs.h:67
ULONG CheckSum
Definition: NativeStructs.h:456
LARGE_INTEGER KernelTime
Definition: NativeStructs.h:231
int ExecuteDispatchEnable
Definition: NativeStructs.h:35
struct _HANDLE_TABLE_ENTRY * PHANDLE_TABLE_ENTRY
struct _NT_PROC_THREAD_ATTRIBUTE_ENTRY * NT_PPROC_THREAD_ATTRIBUTE_ENTRY
ULONG UniqueProcessId
Definition: NativeStructs.h:107
struct _HANDLE_TABLE_ENTRY * FirstFreeHandleEntry
Definition: NativeStructs.h:92
struct _RTL_PROCESS_MODULES RTL_PROCESS_MODULES
ULONG Attribute
Definition: NativeStructs.h:295
PVOID ExceptionTable
Definition: NativeStructs.h:464
ULONGLONG Write
Definition: NativeStructs.h:274
UCHAR DeletedInline
Definition: NativeStructs.h:165
UCHAR BeingDebugged
Definition: NativeStructs.h:427
ULONG ExceptionTableSize
Definition: NativeStructs.h:465
Definition: NativeStructs.h:189
Definition: NativeStructs.h:27
LIST_ENTRY32 InMemoryOrderModuleList
Definition: NativeStructs.h:403
LIST_ENTRY HashLinks
Definition: NativeStructs.h:382
ULONG Length
Definition: NativeStructs.h:191
USHORT LoadCount
Definition: NativeStructs.h:418
union _HANDLE_TABLE::@12 u4
union _EXHANDLE LeafHandleValue
Definition: NativeStructs.h:77
ULONG ImageSize
Definition: NativeStructs.h:313
USHORT Characteristics
Definition: NativeStructs.h:454
ULONG SessionId
Definition: NativeStructs.h:237
USHORT LoadCount
Definition: NativeStructs.h:380
void * Lock
Definition: NativeStructs.h:141
int DisableExceptionChainValidation
Definition: NativeStructs.h:37
PVOID BaseAddress
Definition: NativeStructs.h:180
ULONG Unknown
Definition: NativeStructs.h:298
ULONG_PTR Shared
Definition: NativeStructs.h:337
struct _THREAD_BASIC_INFORMATION * PTHREAD_BASIC_INFORMATION
LIST_ENTRY32 InMemoryOrderLinks
Definition: NativeStructs.h:410
ULONG_PTR PointerCount
Definition: NativeStructs.h:135
Definition: NativeStructs.h:293
LIST_ENTRY InLoadOrderLinks
Definition: NativeStructs.h:463
ULONG SsHandle
Definition: NativeStructs.h:401
PVOID SsHandle
Definition: NativeStructs.h:363
LARGE_INTEGER ReadTransferCount
Definition: NativeStructs.h:254
UCHAR Reserved1[2]
Definition: NativeStructs.h:389
int ImageDispatchEnable
Definition: NativeStructs.h:36
PVOID TebBaseAddress
Definition: NativeStructs.h:214
ULONG ProcessParameters
Definition: NativeStructs.h:432
ULONG DllBase
Definition: NativeStructs.h:412
SIZE_T QuotaPeakNonPagedPoolUsage
Definition: NativeStructs.h:246
ULONG PageFaultCount
Definition: NativeStructs.h:241
UNICODE_STRING FullDllName
Definition: NativeStructs.h:377
Definition: NativeStructs.h:407
UNICODE_STRING FullDllName
Definition: NativeStructs.h:472
long ExtraInfoPages
Definition: NativeStructs.h:103
struct _HANDLE_TABLE::@12::@14 u3
ULONG_PTR Valid
Definition: NativeStructs.h:334
int ExecuteDisable
Definition: NativeStructs.h:31
PVOID ImageBase
Definition: NativeStructs.h:312
ULONGLONG NoExecute
Definition: NativeStructs.h:278
long HandleCount
Definition: NativeStructs.h:94
struct _SYSTEM_THREAD_INFORMATION SYSTEM_THREAD_INFORMATION
union _PS_PROTECTION * PPS_PROTECTION
ULONG ContextSwitches
Definition: NativeStructs.h:206
LARGE_INTEGER OtherTransferCount
Definition: NativeStructs.h:256
SIZE_T Size
Definition: NativeStructs.h:296
int Signer
Definition: NativeStructs.h:23
LARGE_INTEGER KernelTime
Definition: NativeStructs.h:198
LARGE_INTEGER WriteTransferCount
Definition: NativeStructs.h:255
struct _MEMORY_WORKING_SET_EX_INFORMATION * PMEMORY_WORKING_SET_EX_INFORMATION
UCHAR EnableHandleExceptions
Definition: NativeStructs.h:114
struct _PEB * PPEB
ULONG SizeOfImage
Definition: NativeStructs.h:376
NT_PROC_THREAD_ATTRIBUTE_ENTRY Entry[1]
Definition: NativeStructs.h:304
UCHAR SingleHandleEntry
Definition: NativeStructs.h:164
ULONGLONG Unused
Definition: NativeStructs.h:273
ULONG SizeOfImage
Definition: NativeStructs.h:471
void * HandleTableLock
Definition: NativeStructs.h:120
NTSTATUS ExitStatus
Definition: NativeStructs.h:213
PNON_PAGED_DEBUG_INFO NonPagedDebugInfo
Definition: NativeStructs.h:468
UCHAR KernelOnlyAccess
Definition: NativeStructs.h:160
Definition: NativeStructs.h:387
MMPTE_HARDWARE64 Hard
Definition: NativeStructs.h:286
UCHAR FullPathName[256]
Definition: NativeStructs.h:319
ULONGLONG CycleTime
Definition: NativeStructs.h:228
struct _OBJECT_HEADER * POBJECT_HEADER
ULONG Length
Definition: NativeStructs.h:399
LIST_ENTRY32 InLoadOrderLinks
Definition: NativeStructs.h:409
SIZE_T VirtualSize
Definition: NativeStructs.h:240
struct _OBJECT_HEADER OBJECT_HEADER
ULONGLONG Accessed
Definition: NativeStructs.h:268
KPRIORITY Priority
Definition: NativeStructs.h:204
ULONG_PTR LowValue
Definition: NativeStructs.h:63
Definition: NativeStructs.h:435
PVOID PatchInformation
Definition: NativeStructs.h:481
UCHAR DbgRefTrace
Definition: NativeStructs.h:148
ULONG NextEntryOffset
Definition: NativeStructs.h:223
LARGE_INTEGER OtherOperationCount
Definition: NativeStructs.h:253
UCHAR Level
Definition: NativeStructs.h:18
ULONG_PTR Node
Definition: NativeStructs.h:338
ULONG Flags
Definition: NativeStructs.h:474
ULONG TimeDateStamp
Definition: NativeStructs.h:421
struct _NT_PROC_THREAD_ATTRIBUTE_LIST NT_PROC_THREAD_ATTRIBUTE_LIST
struct _PEB_LDR_DATA32 * PPEB_LDR_DATA32
ULONG_PTR HandleCount
Definition: NativeStructs.h:138
PVOID Apc64BitContext
Definition: NativeStructs.h:443
ULONG Length
Definition: NativeStructs.h:303
Definition: NativeStructs.h:281
ULONG State
Definition: NativeStructs.h:184
struct _MEMORY_BASIC_INFORMATION * PMEMORY_BASIC_INFORMATION
ULONG_PTR Locked
Definition: NativeStructs.h:339
struct _PEB_LDR_DATA PEB_LDR_DATA
struct _HANDLE_TABLE::@11::@13 u1
struct _MMPTE MMPTE
struct _EXHANDLE::@2 u
PVOID ProcessParameters
Definition: NativeStructs.h:394
ULONG TimeDateStamp
Definition: NativeStructs.h:455
Definition: NativeStructs.h:461
USHORT LoadCount
Definition: NativeStructs.h:475
UCHAR NewObject
Definition: NativeStructs.h:158
LARGE_INTEGER CreateTime
Definition: NativeStructs.h:229
Definition: NativeStructs.h:16
ULONG NumberOfThreadsHighWatermark
Definition: NativeStructs.h:227
ULONG GrantedAccessBits
Definition: NativeStructs.h:80
UCHAR Reserved1[2]
Definition: NativeStructs.h:426
ULONG_PTR ObjectPointerBits
Definition: NativeStructs.h:70
LARGE_INTEGER WorkingSetPrivateSize
Definition: NativeStructs.h:225
PVOID Reserved3[2]
Definition: NativeStructs.h:392
Definition: NativeStructs.h:308
SIZE_T QuotaNonPagedPoolUsage
Definition: NativeStructs.h:247
ULONG EntryPoint
Definition: NativeStructs.h:413
PVOID EntryPoint
Definition: NativeStructs.h:375
ULONG Reserved[8]
Definition: NativeStructs.h:96
ULONG NumberOfThreads
Definition: NativeStructs.h:224
ULONG Flags
Definition: NativeStructs.h:314
ULONG_PTR Win32Protection
Definition: NativeStructs.h:336
LARGE_INTEGER ReadOperationCount
Definition: NativeStructs.h:251
ULONG Apc32BitContext
Definition: NativeStructs.h:439
ULONGLONG Dirty
Definition: NativeStructs.h:269
ULONGLONG Owner
Definition: NativeStructs.h:265
ULONGLONG PageFrameNumber
Definition: NativeStructs.h:275
void * NextToFree
Definition: NativeStructs.h:139
ULONG_PTR Attributes
Definition: NativeStructs.h:69
struct _PEB PEB
USHORT TlsIndex
Definition: NativeStructs.h:381
struct _QUAD Body
Definition: NativeStructs.h:175
struct _HANDLE_TABLE_ENTRY HANDLE_TABLE_ENTRY
LONG Priority
Definition: NativeStructs.h:217
ULONG_PTR ShareCount
Definition: NativeStructs.h:335
PVOID DllBase
Definition: NativeStructs.h:374
struct _MMPTE_HARDWARE64 MMPTE_HARDWARE64
UCHAR Reserved2[1]
Definition: NativeStructs.h:391
Definition: NativeStructs.h:211
UNICODE_STRING BaseDllName
Definition: NativeStructs.h:378
UCHAR DefaultSecurityQuota
Definition: NativeStructs.h:163
int Permanent
Definition: NativeStructs.h:34
SYSTEM_THREAD_INFORMATION Threads[1]
Definition: NativeStructs.h:257
ULONG_PTR Long
Definition: NativeStructs.h:285
Definition: NativeStructs.h:89
ULONG NumberOfTables
Definition: NativeStructs.h:192
union _KEXECUTE_OPTIONS * PKEXECUTE_OPTIONS
ULONG ImageBaseAddress
Definition: NativeStructs.h:430
USHORT TlsIndex
Definition: NativeStructs.h:419
SIZE_T PrivatePageCount
Definition: NativeStructs.h:250
int ExecuteEnable
Definition: NativeStructs.h:32
ULONG Flags
Definition: NativeStructs.h:417
ULONG AllocationProtect
Definition: NativeStructs.h:182
struct _MEMORY_WORKING_SET_EX_INFORMATION MEMORY_WORKING_SET_EX_INFORMATION
ULONG Spare
Definition: NativeStructs.h:82
ULONG Apc32BitRoutine
Definition: NativeStructs.h:440
struct _SYSTEM_PROCESS_INFO * PSYSTEM_PROCESS_INFO
ULONG NoRightsUpgrade
Definition: NativeStructs.h:81
ULONG_PTR LargePage
Definition: NativeStructs.h:340
ULONGLONG CacheDisable
Definition: NativeStructs.h:267
KPRIORITY BasePriority
Definition: NativeStructs.h:233
LIST_ENTRY InLoadOrderLinks
Definition: NativeStructs.h:371
ULONG Flags
Definition: NativeStructs.h:379
struct _LDR_DATA_TABLE_ENTRY32 * PLDR_DATA_TABLE_ENTRY32
UCHAR Initialized
Definition: NativeStructs.h:400
ULONG_PTR VolatileLowValue
Definition: NativeStructs.h:62
Definition: NativeStructs.h:369
PVOID StartAddress
Definition: NativeStructs.h:202
PVOID MappedBase
Definition: NativeStructs.h:311
UCHAR Reserved2[1]
Definition: NativeStructs.h:428
UNICODE_STRING ImageName
Definition: NativeStructs.h:232
ULONG WaitTime
Definition: NativeStructs.h:201
struct _SYSTEM_PROCESS_INFO SYSTEM_PROCESS_INFO
struct _RTL_PROCESS_MODULE_INFORMATION * PRTL_PROCESS_MODULE_INFORMATION
LARGE_INTEGER UserTime
Definition: NativeStructs.h:199
union _KEXECUTE_OPTIONS KEXECUTE_OPTIONS
ULONG SizeOfImage
Definition: NativeStructs.h:457
Definition: NativeStructs.h:359
struct _OBJECT_CREATE_INFORMATION * ObjectCreateInfo
Definition: NativeStructs.h:171
SIZE_T QuotaPagedPoolUsage
Definition: NativeStructs.h:245
ULONG Size
Definition: NativeStructs.h:452
Definition: NativeStructs.h:133
LIST_ENTRY InInitializationOrderLinks
Definition: NativeStructs.h:373
struct _HANDLE_TRACE_DEBUG_INFO * DebugInfo
Definition: NativeStructs.h:127
Definition: NativeStructs.h:196
struct _LDR_DATA_TABLE_ENTRY * PLDR_DATA_TABLE_ENTRY
KWAIT_REASON WaitReason
Definition: NativeStructs.h:208
struct _PEB_LDR_DATA32 PEB_LDR_DATA32
UCHAR StrictFIFO
Definition: NativeStructs.h:113
SIZE_T WorkingSetSize
Definition: NativeStructs.h:243
struct _THREAD_BASIC_INFORMATION THREAD_BASIC_INFORMATION
UCHAR Rundown
Definition: NativeStructs.h:115
UCHAR Flags
Definition: NativeStructs.h:155
SIZE_T PeakPagefileUsage
Definition: NativeStructs.h:249
struct _EPROCESS * QuotaProcess
Definition: NativeStructs.h:105
ULONG HardFaultCount
Definition: NativeStructs.h:226