//0x28 bytes (sizeof)
struct _KI_RESCHEDULE_CONTEXT_ENTRY
{
struct _KPRCB* Prcb; //0x0
struct _KSHARED_READY_QUEUE* SharedReadyQueue; //0x8
struct _KTHREAD* CompareThread; //0x10
struct _KTHREAD* NewThread; //0x18
union
{
struct
{
UCHAR Idle:1; //0x20
UCHAR IsolationWidth:1; //0x20
UCHAR CanCheckDeferredPreemption:1; //0x20
UCHAR PartialYield:1; //0x20
UCHAR FullYield:1; //0x20
UCHAR IsolationPlaceholder:1; //0x20
UCHAR SpareCompateThreadStateFlags:2; //0x20
};
UCHAR AllCompareThreadStateFlags; //0x20
};
union
{
struct
{
UCHAR ReadyTransition:1; //0x21
UCHAR SpareNewThreadStateFlags:7; //0x21
};
UCHAR AllNewThreadStateFlags; //0x21
};
union
{
struct
{
UCHAR SkipStandbyReschedule:1; //0x22
UCHAR DoNotSetPreemptionBit:1; //0x22
UCHAR SpareCommitFlags:6; //0x22
};
UCHAR AllCommitFlags; //0x22
};
union
{
struct
{
UCHAR NewThreadReferenced:1; //0x23
UCHAR LogEtw:1; //0x23
UCHAR IssuePriorityKick:1; //0x23
UCHAR DispatchInterruptIfHalted:1; //0x23
UCHAR DispatchInterruptAlways:1; //0x23
UCHAR SpareCompletionFlags:3; //0x23
};
UCHAR AllCompletionFlags; //0x23
};
CHAR KickPriority; //0x24
UCHAR Spare[3]; //0x25
};