typedef struct _KTHREAD                                         // 122 elements, 0x330 bytes (sizeof)
          {
/*0x000*/     struct _DISPATCHER_HEADER Header;                           // 13 elements, 0x18 bytes (sizeof)
/*0x018*/     UINT64       CycleTime;
/*0x020*/     UINT64       QuantumTarget;
/*0x028*/     VOID*        InitialStack;
/*0x030*/     VOID*        StackLimit;
/*0x038*/     VOID*        KernelStack;
/*0x040*/     UINT64       ThreadLock;
              union                                                       // 2 elements, 0x30 bytes (sizeof)
              {
/*0x048*/         struct _KAPC_STATE ApcState;                            // 5 elements, 0x30 bytes (sizeof)
                  struct                                                  // 4 elements, 0x30 bytes (sizeof)
                  {
/*0x048*/             UINT8        ApcStateFill[43];
/*0x073*/             CHAR         Priority;
/*0x074*/             UINT16       NextProcessor;
/*0x076*/             UINT16       DeferredProcessor;
                  };
              };
/*0x078*/     UINT64       ApcQueueLock;
/*0x080*/     INT64        WaitStatus;
              union                                                       // 2 elements, 0x8 bytes (sizeof)
              {
/*0x088*/         struct _KWAIT_BLOCK* WaitBlockList;
/*0x088*/         struct _KGATE* GateObject;
              };
              union                                                       // 2 elements, 0x4 bytes (sizeof)
              {
                  struct                                                  // 8 elements, 0x4 bytes (sizeof)
                  {
/*0x090*/             ULONG32      KernelStackResident : 1;               // 0 BitPosition
/*0x090*/             ULONG32      ReadyTransition : 1;                   // 1 BitPosition
/*0x090*/             ULONG32      ProcessReadyQueue : 1;                 // 2 BitPosition
/*0x090*/             ULONG32      WaitNext : 1;                          // 3 BitPosition
/*0x090*/             ULONG32      SystemAffinityActive : 1;              // 4 BitPosition
/*0x090*/             ULONG32      Alertable : 1;                         // 5 BitPosition
/*0x090*/             ULONG32      GdiFlushActive : 1;                    // 6 BitPosition
/*0x090*/             ULONG32      Reserved : 25;                         // 7 BitPosition
                  };
/*0x090*/         LONG32       MiscFlags;
              };
/*0x094*/     UINT8        WaitReason;
/*0x095*/     UINT8        SwapBusy;
/*0x096*/     UINT8        Alerted[2];
              union                                                       // 2 elements, 0x10 bytes (sizeof)
              {
/*0x098*/         struct _LIST_ENTRY WaitListEntry;                       // 2 elements, 0x10 bytes (sizeof)
/*0x098*/         struct _SINGLE_LIST_ENTRY SwapListEntry;                // 1 elements, 0x8 bytes (sizeof)
              };
/*0x0A8*/     struct _KQUEUE* Queue;
/*0x0B0*/     VOID*        Teb;
              union                                                       // 2 elements, 0x40 bytes (sizeof)
              {
/*0x0B8*/         struct _KTIMER Timer;                                   // 5 elements, 0x40 bytes (sizeof)
                  struct                                                  // 2 elements, 0x40 bytes (sizeof)
                  {
/*0x0B8*/             UINT8        TimerFill[60];
                      union                                               // 2 elements, 0x4 bytes (sizeof)
                      {
                          struct                                          // 10 elements, 0x4 bytes (sizeof)
                          {
/*0x0F4*/                     ULONG32      AutoAlignment : 1;             // 0 BitPosition
/*0x0F4*/                     ULONG32      DisableBoost : 1;              // 1 BitPosition
/*0x0F4*/                     ULONG32      EtwStackTraceApc1Inserted : 1; // 2 BitPosition
/*0x0F4*/                     ULONG32      EtwStackTraceApc2Inserted : 1; // 3 BitPosition
/*0x0F4*/                     ULONG32      CycleChargePending : 1;        // 4 BitPosition
/*0x0F4*/                     ULONG32      CalloutActive : 1;             // 5 BitPosition
/*0x0F4*/                     ULONG32      ApcQueueable : 1;              // 6 BitPosition
/*0x0F4*/                     ULONG32      EnableStackSwap : 1;           // 7 BitPosition
/*0x0F4*/                     ULONG32      GuiThread : 1;                 // 8 BitPosition
/*0x0F4*/                     ULONG32      ReservedFlags : 23;            // 9 BitPosition
                          };
/*0x0F4*/                 LONG32       ThreadFlags;
                      };
                  };
              };
              union                                                       // 9 elements, 0xC0 bytes (sizeof)
              {
/*0x0F8*/         struct _KWAIT_BLOCK WaitBlock[4];
                  struct                                                  // 2 elements, 0xC0 bytes (sizeof)
                  {
/*0x0F8*/             UINT8        WaitBlockFill0[43];
/*0x123*/             UINT8        IdealProcessor;
/*0x124*/             UINT8        _PADDING0_[0x94];
                  };
                  struct                                                  // 2 elements, 0xC0 bytes (sizeof)
                  {
/*0x0F8*/             UINT8        WaitBlockFill1[91];
/*0x153*/             CHAR         PreviousMode;
/*0x154*/             UINT8        _PADDING1_[0x64];
                  };
                  struct                                                  // 2 elements, 0xC0 bytes (sizeof)
                  {
/*0x0F8*/             UINT8        WaitBlockFill2[139];
/*0x183*/             UINT8        ResourceIndex;
/*0x184*/             UINT8        _PADDING2_[0x34];
                  };
                  struct                                                  // 2 elements, 0xC0 bytes (sizeof)
                  {
/*0x0F8*/             UINT8        WaitBlockFill3[187];
/*0x1B3*/             UINT8        LargeStack;
/*0x1B4*/             UINT8        _PADDING3_[0x4];
                  };
                  struct                                                  // 2 elements, 0xC0 bytes (sizeof)
                  {
/*0x0F8*/             UINT8        WaitBlockFill4[44];
/*0x124*/             ULONG32      ContextSwitches;
/*0x128*/             UINT8        _PADDING4_[0x90];
                  };
                  struct                                                  // 5 elements, 0xC0 bytes (sizeof)
                  {
/*0x0F8*/             UINT8        WaitBlockFill5[92];
/*0x154*/             UINT8        State;
/*0x155*/             UINT8        NpxState;
/*0x156*/             UINT8        WaitIrql;
/*0x157*/             CHAR         WaitMode;
/*0x158*/             UINT8        _PADDING5_[0x60];
                  };
                  struct                                                  // 2 elements, 0xC0 bytes (sizeof)
                  {
/*0x0F8*/             UINT8        WaitBlockFill6[140];
/*0x184*/             ULONG32      WaitTime;
/*0x188*/             UINT8        _PADDING6_[0x30];
                  };
                  struct                                                  // 2 elements, 0xC0 bytes (sizeof)
                  {
/*0x0F8*/             UINT8        WaitBlockFill7[188];
                      union                                               // 2 elements, 0x4 bytes (sizeof)
                      {
                          struct                                          // 2 elements, 0x4 bytes (sizeof)
                          {
/*0x1B4*/                     INT16        KernelApcDisable;
/*0x1B6*/                     INT16        SpecialApcDisable;
                          };
/*0x1B4*/                 ULONG32      CombinedApcDisable;
                      };
                  };
              };
/*0x1B8*/     struct _LIST_ENTRY QueueListEntry;                          // 2 elements, 0x10 bytes (sizeof)
/*0x1C8*/     struct _KTRAP_FRAME* TrapFrame;
/*0x1D0*/     VOID*        FirstArgument;
              union                                                       // 2 elements, 0x8 bytes (sizeof)
              {
/*0x1D8*/         VOID*        CallbackStack;
/*0x1D8*/         UINT64       CallbackDepth;
              };
/*0x1E0*/     UINT8        ApcStateIndex;
/*0x1E1*/     CHAR         BasePriority;
/*0x1E2*/     CHAR         PriorityDecrement;
/*0x1E3*/     UINT8        Preempted;
/*0x1E4*/     UINT8        AdjustReason;
/*0x1E5*/     CHAR         AdjustIncrement;
/*0x1E6*/     UINT8        Spare01;
/*0x1E7*/     CHAR         Saturation;
/*0x1E8*/     ULONG32      SystemCallNumber;
/*0x1EC*/     ULONG32      Spare02;
/*0x1F0*/     UINT64       UserAffinity;
/*0x1F8*/     struct _KPROCESS* Process;
/*0x200*/     UINT64       Affinity;
/*0x208*/     struct _KAPC_STATE* ApcStatePointer[2];
              union                                                       // 2 elements, 0x30 bytes (sizeof)
              {
/*0x218*/         struct _KAPC_STATE SavedApcState;                       // 5 elements, 0x30 bytes (sizeof)
                  struct                                                  // 6 elements, 0x30 bytes (sizeof)
                  {
/*0x218*/             UINT8        SavedApcStateFill[43];
/*0x243*/             CHAR         FreezeCount;
/*0x244*/             CHAR         SuspendCount;
/*0x245*/             UINT8        UserIdealProcessor;
/*0x246*/             UINT8        Spare03;
/*0x247*/             UINT8        CodePatchInProgress;
                  };
              };
/*0x248*/     VOID*        Win32Thread;
/*0x250*/     VOID*        StackBase;
              union                                                       // 7 elements, 0x58 bytes (sizeof)
              {
/*0x258*/         struct _KAPC SuspendApc;                                // 16 elements, 0x58 bytes (sizeof)
                  struct                                                  // 2 elements, 0x58 bytes (sizeof)
                  {
/*0x258*/             UINT8        SuspendApcFill0[1];
/*0x259*/             CHAR         Spare04;
/*0x25A*/             UINT8        _PADDING7_[0x56];
                  };
                  struct                                                  // 2 elements, 0x58 bytes (sizeof)
                  {
/*0x258*/             UINT8        SuspendApcFill1[3];
/*0x25B*/             UINT8        QuantumReset;
/*0x25C*/             UINT8        _PADDING8_[0x54];
                  };
                  struct                                                  // 2 elements, 0x58 bytes (sizeof)
                  {
/*0x258*/             UINT8        SuspendApcFill2[4];
/*0x25C*/             ULONG32      KernelTime;
/*0x260*/             UINT8        _PADDING9_[0x50];
                  };
                  struct                                                  // 2 elements, 0x58 bytes (sizeof)
                  {
/*0x258*/             UINT8        SuspendApcFill3[64];
/*0x298*/             struct _KPRCB* WaitPrcb;
/*0x2A0*/             UINT8        _PADDING10_[0x10];
                  };
                  struct                                                  // 2 elements, 0x58 bytes (sizeof)
                  {
/*0x258*/             UINT8        SuspendApcFill4[72];
/*0x2A0*/             VOID*        LegoData;
/*0x2A8*/             UINT8        _PADDING11_[0x8];
                  };
                  struct                                                  // 3 elements, 0x58 bytes (sizeof)
                  {
/*0x258*/             UINT8        SuspendApcFill5[83];
/*0x2AB*/             UINT8        PowerState;
/*0x2AC*/             ULONG32      UserTime;
                  };
              };
              union                                                       // 2 elements, 0x20 bytes (sizeof)
              {
/*0x2B0*/         struct _KSEMAPHORE SuspendSemaphore;                    // 2 elements, 0x20 bytes (sizeof)
                  struct                                                  // 2 elements, 0x20 bytes (sizeof)
                  {
/*0x2B0*/             UINT8        SuspendSemaphorefill[28];
/*0x2CC*/             ULONG32      SListFaultCount;
                  };
              };
/*0x2D0*/     struct _LIST_ENTRY ThreadListEntry;                         // 2 elements, 0x10 bytes (sizeof)
/*0x2E0*/     struct _LIST_ENTRY MutantListHead;                          // 2 elements, 0x10 bytes (sizeof)
/*0x2F0*/     VOID*        SListFaultAddress;
/*0x2F8*/     INT64        ReadOperationCount;
/*0x300*/     INT64        WriteOperationCount;
/*0x308*/     INT64        OtherOperationCount;
/*0x310*/     INT64        ReadTransferCount;
/*0x318*/     INT64        WriteTransferCount;
/*0x320*/     INT64        OtherTransferCount;
/*0x328*/     VOID*        MdlForLockedTeb;
          }KTHREAD, *PKTHREAD;
Return to structures/enums list.
Return to O.S. version list.

(c) MoonSols 2010.