//0xe8 bytes (sizeof)
struct _MI_SLAB_ALLOCATOR_CONTEXT
{
    struct _RTL_RB_TREE SlabTree;                                           //0x0
    volatile LONG Lock;                                                     //0x10
    struct _MI_PARTITION* Partition;                                        //0x18
    struct
    {
        union
        {
            struct
            {
                struct _MI_SLAB_ALLOCATOR_ENTRY* AllocationHint;            //0x20
                struct _MI_SLAB_ALLOCATOR_ENTRY* FreeHint;                  //0x28
            } NonIdentity;                                                  //0x20
            struct
            {
                struct _MI_SLAB_ALLOCATOR_ENTRY** AllocationHints;          //0x20
                struct _MI_SLAB_ALLOCATOR_ENTRY** FreeHints;                //0x28
            } Identity;                                                     //0x20
        };
        struct _MI_SLAB_ALLOCATOR_ENTRY* DefragSourceEntry;                 //0x30
        struct _MI_SLAB_ALLOCATOR_ENTRY* DefragTargetEntry;                 //0x38
    } Hints;                                                                //0x20
    VOID* StandbyPageCache;                                                 //0x40
    VOID* StandbyPageList;                                                  //0x48
    struct _MMPFNLIST* RepurposedStandbyPageList;                           //0x50
    struct _LIST_ENTRY* SlabListsByIdentity;                                //0x58
    ULONGLONG FreePageCount;                                                //0x60
    ULONGLONG AvailablePagesGoal;                                           //0x68
    ULONGLONG ChargedPageCount;                                             //0x70
    ULONGLONG SlabEntryCount;                                               //0x78
    enum _MI_SLAB_ALLOCATOR_TYPE Type;                                      //0x80
    struct _MI_NODE_NUMBER_ZERO_BASED NumaNodeIndex;                        //0x84
    union
    {
        ULONG EntryBecameEmpty:1;                                           //0x88
        ULONG DemoteInProgress:1;                                           //0x88
        ULONG PreferZeroedPages:1;                                          //0x88
        ULONG ZeroOnFree:1;                                                 //0x88
        ULONG LargePageIndex:2;                                             //0x88
        ULONG Spare:26;                                                     //0x88
        ULONG AllFlags;                                                     //0x88
    } Flags;                                                                //0x88
    volatile LONG ReEvaluateAllocationHint;                                 //0x8c
    ULONG SlabEntriesAllocated;                                             //0x90
    ULONG SlabEntriesDemoted;                                               //0x94
    ULONG SlabEntriesFailedFast;                                            //0x98
    ULONG SlabEntriesFailedSlow;                                            //0x9c
    ULONG SlabPagesFreedNonZeroed;                                          //0xa0
    ULONG SlabPagesCrossIdentity;                                           //0xa4
    ULONGLONG LastReplenishTime;                                            //0xa8
    ULONGLONG LastFailureTime;                                              //0xb0
    struct _WORK_QUEUE_ITEM ReplenishWorkItem;                              //0xb8
    struct _LIST_ENTRY ReplenishWaitList;                                   //0xd8
};