typedef struct _KPRCB                                         // 187 elements, 0x3B20 bytes (sizeof)
           {
/*0x000*/      ULONG32      MxCsr;
/*0x004*/      UINT16       Number;
/*0x006*/      UINT8        InterruptRequest;
/*0x007*/      UINT8        IdleHalt;
/*0x008*/      struct _KTHREAD* CurrentThread;
/*0x010*/      struct _KTHREAD* NextThread;
/*0x018*/      struct _KTHREAD* IdleThread;
/*0x020*/      UINT8        NestingLevel;
/*0x021*/      UINT8        Group;
/*0x022*/      UINT8        PrcbPad00[6];
/*0x028*/      UINT64       RspBase;
/*0x030*/      UINT64       PrcbLock;
/*0x038*/      UINT64       SetMember;
/*0x040*/      struct _KPROCESSOR_STATE ProcessorState;                  // 2 elements, 0x5B0 bytes (sizeof)
/*0x5F0*/      CHAR         CpuType;
/*0x5F1*/      CHAR         CpuID;
               union                                                     // 2 elements, 0x2 bytes (sizeof)
               {
/*0x5F2*/          UINT16       CpuStep;
                   struct                                                // 2 elements, 0x2 bytes (sizeof)
                   {
/*0x5F2*/              UINT8        CpuStepping;
/*0x5F3*/              UINT8        CpuModel;
                   };
               };
/*0x5F4*/      ULONG32      MHz;
/*0x5F8*/      UINT64       HalReserved[8];
/*0x638*/      UINT16       MinorVersion;
/*0x63A*/      UINT16       MajorVersion;
/*0x63C*/      UINT8        BuildType;
/*0x63D*/      UINT8        CpuVendor;
/*0x63E*/      UINT8        CoresPerPhysicalProcessor;
/*0x63F*/      UINT8        LogicalProcessorsPerCore;
/*0x640*/      ULONG32      ApicMask;
/*0x644*/      ULONG32      CFlushSize;
/*0x648*/      VOID*        AcpiReserved;
/*0x650*/      ULONG32      InitialApicId;
/*0x654*/      ULONG32      Stride;
/*0x658*/      UINT64       PrcbPad01[3];
/*0x670*/      struct _KSPIN_LOCK_QUEUE LockQueue[49];
/*0x980*/      struct _PP_LOOKASIDE_LIST PPLookasideList[16];
/*0xA80*/      struct _GENERAL_LOOKASIDE_POOL PPNPagedLookasideList[32];
/*0x1680*/     struct _GENERAL_LOOKASIDE_POOL PPPagedLookasideList[32];
/*0x2280*/     UINT64       PacketBarrier;
/*0x2288*/     struct _SINGLE_LIST_ENTRY DeferredReadyListHead;          // 1 elements, 0x8 bytes (sizeof)
/*0x2290*/     LONG32       MmPageFaultCount;
/*0x2294*/     LONG32       MmCopyOnWriteCount;
/*0x2298*/     LONG32       MmTransitionCount;
/*0x229C*/     LONG32       MmDemandZeroCount;
/*0x22A0*/     LONG32       MmPageReadCount;
/*0x22A4*/     LONG32       MmPageReadIoCount;
/*0x22A8*/     LONG32       MmDirtyPagesWriteCount;
/*0x22AC*/     LONG32       MmDirtyWriteIoCount;
/*0x22B0*/     LONG32       MmMappedPagesWriteCount;
/*0x22B4*/     LONG32       MmMappedWriteIoCount;
/*0x22B8*/     ULONG32      KeSystemCalls;
/*0x22BC*/     ULONG32      KeContextSwitches;
/*0x22C0*/     ULONG32      CcFastReadNoWait;
/*0x22C4*/     ULONG32      CcFastReadWait;
/*0x22C8*/     ULONG32      CcFastReadNotPossible;
/*0x22CC*/     ULONG32      CcCopyReadNoWait;
/*0x22D0*/     ULONG32      CcCopyReadWait;
/*0x22D4*/     ULONG32      CcCopyReadNoWaitMiss;
/*0x22D8*/     LONG32       LookasideIrpFloat;
/*0x22DC*/     LONG32       IoReadOperationCount;
/*0x22E0*/     LONG32       IoWriteOperationCount;
/*0x22E4*/     LONG32       IoOtherOperationCount;
/*0x22E8*/     union _LARGE_INTEGER IoReadTransferCount;                 // 4 elements, 0x8 bytes (sizeof)
/*0x22F0*/     union _LARGE_INTEGER IoWriteTransferCount;                // 4 elements, 0x8 bytes (sizeof)
/*0x22F8*/     union _LARGE_INTEGER IoOtherTransferCount;                // 4 elements, 0x8 bytes (sizeof)
/*0x2300*/     UINT64       TargetSet;
/*0x2308*/     ULONG32      IpiFrozen;
/*0x230C*/     UINT8        PrcbPad3[116];
/*0x2380*/     struct _REQUEST_MAILBOX RequestMailbox[64];
/*0x3380*/     UINT64       SenderSummary;
/*0x3388*/     UINT8        PrcbPad4[120];
/*0x3400*/     struct _KDPC_DATA DpcData[2];
/*0x3440*/     VOID*        DpcStack;
/*0x3448*/     VOID*        SparePtr0;
/*0x3450*/     LONG32       MaximumDpcQueueDepth;
/*0x3454*/     ULONG32      DpcRequestRate;
/*0x3458*/     ULONG32      MinimumDpcRate;
/*0x345C*/     UINT8        DpcInterruptRequested;
/*0x345D*/     UINT8        DpcThreadRequested;
/*0x345E*/     UINT8        DpcRoutineActive;
/*0x345F*/     UINT8        DpcThreadActive;
               union                                                     // 2 elements, 0x8 bytes (sizeof)
               {
/*0x3460*/         UINT64       TimerHand;
/*0x3460*/         UINT64       TimerRequest;
               };
/*0x3468*/     LONG32       TickOffset;
/*0x346C*/     LONG32       MasterOffset;
/*0x3470*/     ULONG32      DpcLastCount;
/*0x3474*/     UINT8        ThreadDpcEnable;
/*0x3475*/     UINT8        QuantumEnd;
/*0x3476*/     UINT8        PrcbPad50;
/*0x3477*/     UINT8        IdleSchedule;
/*0x3478*/     LONG32       DpcSetEventRequest;
/*0x347C*/     ULONG32      KeExceptionDispatchCount;
/*0x3480*/     struct _KEVENT DpcEvent;                                  // 1 elements, 0x18 bytes (sizeof)
/*0x3498*/     VOID*        PrcbPad51;
/*0x34A0*/     struct _KDPC CallDpc;                                     // 9 elements, 0x40 bytes (sizeof)
/*0x34E0*/     LONG32       ClockKeepAlive;
/*0x34E4*/     UINT8        ClockCheckSlot;
/*0x34E5*/     UINT8        ClockPollCycle;
/*0x34E6*/     UINT8        PrcbPad6[2];
/*0x34E8*/     LONG32       DpcWatchdogPeriod;
/*0x34EC*/     LONG32       DpcWatchdogCount;
/*0x34F0*/     UINT64       PrcbPad70[2];
/*0x3500*/     struct _LIST_ENTRY WaitListHead;                          // 2 elements, 0x10 bytes (sizeof)
/*0x3510*/     UINT64       WaitLock;
/*0x3518*/     ULONG32      ReadySummary;
/*0x351C*/     ULONG32      QueueIndex;
/*0x3520*/     UINT64       PrcbPad71[12];
/*0x3580*/     struct _LIST_ENTRY DispatcherReadyListHead[32];
/*0x3780*/     ULONG32      InterruptCount;
/*0x3784*/     ULONG32      KernelTime;
/*0x3788*/     ULONG32      UserTime;
/*0x378C*/     ULONG32      DpcTime;
/*0x3790*/     ULONG32      InterruptTime;
/*0x3794*/     ULONG32      AdjustDpcThreshold;
/*0x3798*/     UINT8        SkipTick;
/*0x3799*/     UINT8        DebuggerSavedIRQL;
/*0x379A*/     UINT8        PollSlot;
/*0x379B*/     UINT8        PrcbPad80[5];
/*0x37A0*/     ULONG32      DpcTimeCount;
/*0x37A4*/     ULONG32      DpcTimeLimit;
/*0x37A8*/     ULONG32      PeriodicCount;
/*0x37AC*/     ULONG32      PeriodicBias;
/*0x37B0*/     UINT64       PrcbPad81[2];
/*0x37C0*/     struct _KNODE* ParentNode;
/*0x37C8*/     UINT64       MultiThreadProcessorSet;
/*0x37D0*/     struct _KPRCB* MultiThreadSetMaster;
/*0x37D8*/     UINT64       StartCycles;
/*0x37E0*/     LONG32       MmSpinLockOrdering;
/*0x37E4*/     ULONG32      PageColor;
/*0x37E8*/     ULONG32      NodeColor;
/*0x37EC*/     ULONG32      NodeShiftedColor;
/*0x37F0*/     ULONG32      SecondaryColorMask;
/*0x37F4*/     LONG32       Sleeping;
/*0x37F8*/     UINT64       CycleTime;
/*0x3800*/     ULONG32      CcFastMdlReadNoWait;
/*0x3804*/     ULONG32      CcFastMdlReadWait;
/*0x3808*/     ULONG32      CcFastMdlReadNotPossible;
/*0x380C*/     ULONG32      CcMapDataNoWait;
/*0x3810*/     ULONG32      CcMapDataWait;
/*0x3814*/     ULONG32      CcPinMappedDataCount;
/*0x3818*/     ULONG32      CcPinReadNoWait;
/*0x381C*/     ULONG32      CcPinReadWait;
/*0x3820*/     ULONG32      CcMdlReadNoWait;
/*0x3824*/     ULONG32      CcMdlReadWait;
/*0x3828*/     ULONG32      CcLazyWriteHotSpots;
/*0x382C*/     ULONG32      CcLazyWriteIos;
/*0x3830*/     ULONG32      CcLazyWritePages;
/*0x3834*/     ULONG32      CcDataFlushes;
/*0x3838*/     ULONG32      CcDataPages;
/*0x383C*/     ULONG32      CcLostDelayedWrites;
/*0x3840*/     ULONG32      CcFastReadResourceMiss;
/*0x3844*/     ULONG32      CcCopyReadWaitMiss;
/*0x3848*/     ULONG32      CcFastMdlReadResourceMiss;
/*0x384C*/     ULONG32      CcMapDataNoWaitMiss;
/*0x3850*/     ULONG32      CcMapDataWaitMiss;
/*0x3854*/     ULONG32      CcPinReadNoWaitMiss;
/*0x3858*/     ULONG32      CcPinReadWaitMiss;
/*0x385C*/     ULONG32      CcMdlReadNoWaitMiss;
/*0x3860*/     ULONG32      CcMdlReadWaitMiss;
/*0x3864*/     ULONG32      CcReadAheadIos;
/*0x3868*/     LONG32       MmCacheTransitionCount;
/*0x386C*/     LONG32       MmCacheReadCount;
/*0x3870*/     LONG32       MmCacheIoCount;
/*0x3874*/     ULONG32      PrcbPad91[3];
/*0x3880*/     struct _PROCESSOR_POWER_STATE PowerState;                 // 29 elements, 0x118 bytes (sizeof)
/*0x3998*/     ULONG32      KeAlignmentFixupCount;
/*0x399C*/     UINT8        VendorString[13];
/*0x39A9*/     UINT8        PrcbPad10[3];
/*0x39AC*/     ULONG32      FeatureBits;
/*0x39B0*/     union _LARGE_INTEGER UpdateSignature;                     // 4 elements, 0x8 bytes (sizeof)
/*0x39B8*/     struct _KDPC DpcWatchdogDpc;                              // 9 elements, 0x40 bytes (sizeof)
/*0x39F8*/     struct _KTIMER DpcWatchdogTimer;                          // 5 elements, 0x40 bytes (sizeof)
/*0x3A38*/     struct _CACHE_DESCRIPTOR Cache[5];
/*0x3A74*/     ULONG32      CacheCount;
/*0x3A78*/     ULONG32      CachedCommit;
/*0x3A7C*/     ULONG32      CachedResidentAvailable;
/*0x3A80*/     VOID*        HyperPte;
/*0x3A88*/     VOID*        WheaInfo;
/*0x3A90*/     VOID*        EtwSupport;
/*0x3A98*/     UINT8        _PADDING0_[0x8];
/*0x3AA0*/     union _SLIST_HEADER InterruptObjectPool;                  // 5 elements, 0x10 bytes (sizeof)
/*0x3AB0*/     union _SLIST_HEADER HypercallPageList;                    // 5 elements, 0x10 bytes (sizeof)
/*0x3AC0*/     VOID*        HypercallPageVirtual;
/*0x3AC8*/     VOID*        VirtualApicAssist;
/*0x3AD0*/     UINT64*      StatisticsPage;
/*0x3AD8*/     VOID*        RateControl;
/*0x3AE0*/     UINT64       CacheProcessorMask[5];
/*0x3B08*/     UINT64       PackageProcessorSet;
/*0x3B10*/     UINT64       CoreProcessorSet;
/*0x3B18*/     UINT8        _PADDING1_[0x8];
           }KPRCB, *PKPRCB;
Return to structures/enums list.
Return to O.S. version list.

(c) MoonSols 2010.