//0x4900 bytes (sizeof)
struct _KPRCB
{
USHORT MinorVersion; //0x0
USHORT MajorVersion; //0x2
struct _KTHREAD* CurrentThread; //0x4
struct _KTHREAD* NextThread; //0x8
struct _KTHREAD* IdleThread; //0xc
UCHAR LegacyNumber; //0x10
UCHAR NestingLevel; //0x11
USHORT BuildType; //0x12
CHAR CpuType; //0x14
CHAR CpuID; //0x15
union
{
USHORT CpuStep; //0x16
struct
{
UCHAR CpuStepping; //0x16
UCHAR CpuModel; //0x17
};
};
struct _KPROCESSOR_STATE ProcessorState; //0x18
struct _KNODE* ParentNode; //0x338
CHAR* PriorityState; //0x33c
ULONG KernelReserved[14]; //0x340
ULONG HalReserved[16]; //0x378
ULONG CFlushSize; //0x3b8
UCHAR CoresPerPhysicalProcessor; //0x3bc
UCHAR LogicalProcessorsPerCore; //0x3bd
UCHAR CpuVendor; //0x3be
UCHAR PrcbPad0[1]; //0x3bf
ULONG MHz; //0x3c0
UCHAR GroupIndex; //0x3c4
UCHAR Group; //0x3c5
UCHAR PrcbPad05[2]; //0x3c6
ULONG GroupSetMember; //0x3c8
ULONG Number; //0x3cc
UCHAR ClockOwner; //0x3d0
union
{
UCHAR PendingTickFlags; //0x3d1
struct
{
UCHAR PendingTick:1; //0x3d1
UCHAR PendingBackupTick:1; //0x3d1
};
};
UCHAR PrcbPad10[70]; //0x3d2
struct _KSPIN_LOCK_QUEUE LockQueue[17]; //0x418
ULONG InterruptCount; //0x4a0
ULONG KernelTime; //0x4a4
ULONG UserTime; //0x4a8
ULONG DpcTime; //0x4ac
ULONG DpcTimeCount; //0x4b0
ULONG InterruptTime; //0x4b4
ULONG AdjustDpcThreshold; //0x4b8
ULONG PageColor; //0x4bc
UCHAR DebuggerSavedIRQL; //0x4c0
UCHAR NodeColor; //0x4c1
UCHAR DeepSleep; //0x4c2
UCHAR PrcbPad20[5]; //0x4c3
ULONG NodeShiftedColor; //0x4c8
ULONG SecondaryColorMask; //0x4cc
ULONG DpcTimeLimit; //0x4d0
ULONG PrcbPad21[3]; //0x4d4
ULONG CcFastReadNoWait; //0x4e0
ULONG CcFastReadWait; //0x4e4
ULONG CcFastReadNotPossible; //0x4e8
ULONG CcCopyReadNoWait; //0x4ec
ULONG CcCopyReadWait; //0x4f0
ULONG CcCopyReadNoWaitMiss; //0x4f4
volatile LONG MmSpinLockOrdering; //0x4f8
volatile LONG IoReadOperationCount; //0x4fc
volatile LONG IoWriteOperationCount; //0x500
volatile LONG IoOtherOperationCount; //0x504
union _LARGE_INTEGER IoReadTransferCount; //0x508
union _LARGE_INTEGER IoWriteTransferCount; //0x510
union _LARGE_INTEGER IoOtherTransferCount; //0x518
ULONG CcFastMdlReadNoWait; //0x520
ULONG CcFastMdlReadWait; //0x524
ULONG CcFastMdlReadNotPossible; //0x528
ULONG CcMapDataNoWait; //0x52c
ULONG CcMapDataWait; //0x530
ULONG CcPinMappedDataCount; //0x534
ULONG CcPinReadNoWait; //0x538
ULONG CcPinReadWait; //0x53c
ULONG CcMdlReadNoWait; //0x540
ULONG CcMdlReadWait; //0x544
ULONG CcLazyWriteHotSpots; //0x548
ULONG CcLazyWriteIos; //0x54c
ULONG CcLazyWritePages; //0x550
ULONG CcDataFlushes; //0x554
ULONG CcDataPages; //0x558
ULONG CcLostDelayedWrites; //0x55c
ULONG CcFastReadResourceMiss; //0x560
ULONG CcCopyReadWaitMiss; //0x564
ULONG CcFastMdlReadResourceMiss; //0x568
ULONG CcMapDataNoWaitMiss; //0x56c
ULONG CcMapDataWaitMiss; //0x570
ULONG CcPinReadNoWaitMiss; //0x574
ULONG CcPinReadWaitMiss; //0x578
ULONG CcMdlReadNoWaitMiss; //0x57c
ULONG CcMdlReadWaitMiss; //0x580
ULONG CcReadAheadIos; //0x584
ULONG KeAlignmentFixupCount; //0x588
ULONG KeExceptionDispatchCount; //0x58c
ULONG KeSystemCalls; //0x590
ULONG AvailableTime; //0x594
ULONG PrcbPad22[2]; //0x598
struct _PP_LOOKASIDE_LIST PPLookasideList[16]; //0x5a0
struct _GENERAL_LOOKASIDE_POOL PPNxPagedLookasideList[32]; //0x620
struct _GENERAL_LOOKASIDE_POOL PPNPagedLookasideList[32]; //0xf20
struct _GENERAL_LOOKASIDE_POOL PPPagedLookasideList[32]; //0x1820
volatile LONG PacketBarrier; //0x2120
volatile LONG ReverseStall; //0x2124
VOID* IpiFrame; //0x2128
UCHAR PrcbPad3[52]; //0x212c
VOID* volatile CurrentPacket[3]; //0x2160
volatile ULONG TargetSet; //0x216c
VOID (* volatileWorkerRoutine)(VOID* arg1, VOID* arg2, VOID* arg3, VOID* arg4); //0x2170
volatile ULONG IpiFrozen; //0x2174
UCHAR PrcbPad4[40]; //0x2178
volatile ULONG RequestSummary; //0x21a0
volatile LONG TargetCount; //0x21a4
UCHAR PrcbPad50[40]; //0x21a8
ULONG InterruptLastCount; //0x21d0
ULONG InterruptRate; //0x21d4
ULONG DeviceInterrupts; //0x21d8
VOID* IsrDpcStats; //0x21dc
struct _KDPC_DATA DpcData[2]; //0x21e0
VOID* DpcStack; //0x2210
LONG MaximumDpcQueueDepth; //0x2214
ULONG DpcRequestRate; //0x2218
ULONG MinimumDpcRate; //0x221c
ULONG DpcLastCount; //0x2220
ULONG PrcbLock; //0x2224
struct _KGATE DpcGate; //0x2228
UCHAR IdleState; //0x2238
volatile UCHAR QuantumEnd; //0x2239
volatile UCHAR DpcRoutineActive; //0x223a
volatile UCHAR IdleSchedule; //0x223b
union
{
volatile LONG DpcRequestSummary; //0x223c
SHORT DpcRequestSlot[2]; //0x223c
struct
{
SHORT NormalDpcState; //0x223c
SHORT ThreadDpcState; //0x223e
};
struct
{
ULONG DpcNormalProcessingActive:1; //0x223c
ULONG DpcNormalProcessingRequested:1; //0x223c
ULONG DpcNormalThreadSignal:1; //0x223c
ULONG DpcNormalTimerExpiration:1; //0x223c
ULONG DpcNormalDpcPresent:1; //0x223c
ULONG DpcNormalLocalInterrupt:1; //0x223c
ULONG DpcNormalSpare:10; //0x223c
ULONG DpcThreadActive:1; //0x223c
ULONG DpcThreadRequested:1; //0x223c
ULONG DpcThreadSpare:14; //0x223c
};
};
ULONG LastTimerHand; //0x2240
ULONG LastTick; //0x2244
ULONG PeriodicCount; //0x2248
ULONG PeriodicBias; //0x224c
ULONG ClockInterrupts; //0x2250
ULONG ReadyScanTick; //0x2254
UCHAR GroupSchedulingOverQuota; //0x2258
UCHAR ThreadDpcEnable; //0x2259
UCHAR PrcbPad41[2]; //0x225a
struct _KTIMER_TABLE TimerTable; //0x2260
struct _KDPC CallDpc; //0x3aa0
LONG ClockKeepAlive; //0x3ac0
UCHAR PrcbPad6[4]; //0x3ac4
LONG DpcWatchdogPeriod; //0x3ac8
LONG DpcWatchdogCount; //0x3acc
volatile LONG KeSpinLockOrdering; //0x3ad0
ULONG PrcbPad70[1]; //0x3ad4
ULONG QueueIndex; //0x3ad8
struct _SINGLE_LIST_ENTRY DeferredReadyListHead; //0x3adc
ULONG ReadySummary; //0x3ae0
LONG AffinitizedSelectionMask; //0x3ae4
ULONG WaitLock; //0x3ae8
struct _LIST_ENTRY WaitListHead; //0x3aec
ULONG ScbOffset; //0x3af4
ULONGLONG StartCycles; //0x3af8
ULONGLONG TaggedCyclesStart; //0x3b00
ULONGLONG TaggedCycles[2]; //0x3b08
ULONGLONG GenerationTarget; //0x3b18
volatile ULONGLONG CycleTime; //0x3b20
ULONGLONG AffinitizedCycles; //0x3b28
volatile ULONG HighCycleTime; //0x3b30
ULONGLONG Cycles[4][2]; //0x3b38
ULONG PrcbPad71[10]; //0x3b78
struct _LIST_ENTRY DispatcherReadyListHead[32]; //0x3ba0
VOID* ChainedInterruptList; //0x3ca0
LONG LookasideIrpFloat; //0x3ca4
struct _RTL_RB_TREE ScbQueue; //0x3ca8
struct _LIST_ENTRY ScbList; //0x3cb0
volatile LONG MmPageFaultCount; //0x3cb8
volatile LONG MmCopyOnWriteCount; //0x3cbc
volatile LONG MmTransitionCount; //0x3cc0
volatile LONG MmCacheTransitionCount; //0x3cc4
volatile LONG MmDemandZeroCount; //0x3cc8
volatile LONG MmPageReadCount; //0x3ccc
volatile LONG MmPageReadIoCount; //0x3cd0
volatile LONG MmCacheReadCount; //0x3cd4
volatile LONG MmCacheIoCount; //0x3cd8
volatile LONG MmDirtyPagesWriteCount; //0x3cdc
volatile LONG MmDirtyWriteIoCount; //0x3ce0
volatile LONG MmMappedPagesWriteCount; //0x3ce4
volatile LONG MmMappedWriteIoCount; //0x3ce8
volatile ULONG CachedCommit; //0x3cec
volatile ULONG CachedResidentAvailable; //0x3cf0
VOID* HyperPte; //0x3cf4
UCHAR PrcbPad8[4]; //0x3cf8
UCHAR VendorString[13]; //0x3cfc
UCHAR InitialApicId; //0x3d09
UCHAR LogicalProcessorsPerPhysicalProcessor; //0x3d0a
UCHAR PrcbPad9[1]; //0x3d0b
ULONGLONG FeatureBits; //0x3d10
union _LARGE_INTEGER UpdateSignature; //0x3d18
volatile ULONGLONG IsrTime; //0x3d20
ULONG PrcbPad90[2]; //0x3d28
struct _PROCESSOR_POWER_STATE PowerState; //0x3d30
ULONG PrcbPad91[17]; //0x3eb0
struct _KDPC DpcWatchdogDpc; //0x3ef4
struct _KTIMER DpcWatchdogTimer; //0x3f18
union _SLIST_HEADER HypercallPageList; //0x3f40
VOID* HypercallCachedPages; //0x3f48
VOID* VirtualApicAssist; //0x3f4c
ULONGLONG* StatisticsPage; //0x3f50
struct _CACHE_DESCRIPTOR Cache[5]; //0x3f54
ULONG CacheCount; //0x3f90
struct _KAFFINITY_EX PackageProcessorSet; //0x3f94
ULONG SharedReadyQueueMask; //0x3fa0
struct _KSHARED_READY_QUEUE* SharedReadyQueue; //0x3fa4
ULONG SharedQueueScanOwner; //0x3fa8
ULONG CoreProcessorSet; //0x3fac
ULONG ScanSiblingMask; //0x3fb0
ULONG LLCMask; //0x3fb4
ULONG CacheProcessorMask[5]; //0x3fb8
ULONG ScanSiblingIndex; //0x3fcc
VOID* WheaInfo; //0x3fd0
VOID* EtwSupport; //0x3fd4
union _SLIST_HEADER InterruptObjectPool; //0x3fd8
ULONG PrcbPad92[3]; //0x3fe0
ULONG PteBitCache; //0x3fec
ULONG PteBitOffset; //0x3ff0
ULONG PrcbPad93; //0x3ff4
struct _PROCESSOR_PROFILE_CONTROL_AREA* ProcessorProfileControlArea; //0x3ff8
VOID* ProfileEventIndexAddress; //0x3ffc
struct _KDPC TimerExpirationDpc; //0x4000
struct _SYNCH_COUNTERS SynchCounters; //0x4020
struct _FILESYSTEM_DISK_COUNTERS FsCounters; //0x40d8
struct _CONTEXT* Context; //0x40e8
ULONG ContextFlagsInit; //0x40ec
struct _XSAVE_AREA* ExtendedState; //0x40f0
struct _KENTROPY_TIMING_STATE EntropyTimingState; //0x40f4
VOID* IsrStack; //0x421c
struct _KINTERRUPT* VectorToInterruptObject[208]; //0x4220
struct _SINGLE_LIST_ENTRY AbSelfIoBoostsList; //0x4560
struct _SINGLE_LIST_ENTRY AbPropagateBoostsList; //0x4564
struct _KDPC AbDpc; //0x4568
struct _IOP_IRP_STACK_PROFILER IoIrpStackProfilerCurrent; //0x4588
struct _IOP_IRP_STACK_PROFILER IoIrpStackProfilerPrevious; //0x45dc
struct _KTIMER_EXPIRATION_TRACE TimerExpirationTrace[16]; //0x4630
ULONG TimerExpirationTraceCount; //0x4730
VOID* ExSaPageArray; //0x4734
ULONG PrcbPad100[10]; //0x4738
struct _KSHARED_READY_QUEUE LocalSharedReadyQueue; //0x4760
UCHAR PrcbPad95[12]; //0x4894
struct _REQUEST_MAILBOX* Mailbox; //0x48a0
UCHAR PrcbPad[60]; //0x48a4
struct _REQUEST_MAILBOX RequestMailbox[1]; //0x48e0
};