//0x50 bytes (sizeof)
struct _CONTROL_AREA
{
    struct _SEGMENT* Segment;                                               //0x0
    struct _LIST_ENTRY ListHead;                                            //0x4
    ULONG NumberOfSectionReferences;                                        //0xc
    ULONG NumberOfPfnReferences;                                            //0x10
    ULONG NumberOfMappedViews;                                              //0x14
    ULONG NumberOfUserReferences;                                           //0x18
    union
    {
        ULONG LongFlags;                                                    //0x1c
        struct _MMSECTION_FLAGS Flags;                                      //0x1c
    } u;                                                                    //0x1c
    struct _EX_FAST_REF FilePointer;                                        //0x20
    volatile LONG ControlAreaLock;                                          //0x24
    ULONG ModifiedWriteCount;                                               //0x28
    struct _MI_CONTROL_AREA_WAIT_BLOCK* WaitList;                           //0x2c
    union
    {
        struct
        {
            union
            {
                ULONG NumberOfSystemCacheViews;                             //0x30
                ULONG ImageRelocationStartBit;                              //0x30
            };
            union
            {
                volatile LONG WritableUserReferences;                       //0x34
                struct
                {
                    ULONG ImageRelocationSizeIn64k:16;                      //0x34
                    ULONG LargePage:1;                                      //0x34
                    ULONG SystemImage:1;                                    //0x34
                    ULONG StrongCode:2;                                     //0x34
                    ULONG CantMove:1;                                       //0x34
                    ULONG BitMap:2;                                         //0x34
                    ULONG ImageActive:1;                                    //0x34
                };
            };
            union
            {
                ULONG FlushInProgressCount;                                 //0x38
                ULONG NumberOfSubsections;                                  //0x38
                struct _MI_IMAGE_SECURITY_REFERENCE* SeImageStub;           //0x38
            };
        } e2;                                                               //0x30
    } u2;                                                                   //0x30
    struct _EX_PUSH_LOCK FileObjectLock;                                    //0x3c
    volatile ULONGLONG LockedPages;                                         //0x40
    union
    {
        ULONG IoAttributionContext:29;                                      //0x48
        ULONG Spare:3;                                                      //0x48
        ULONG ImageCrossPartitionCharge;                                    //0x48
        ULONG CommittedPageCount:20;                                        //0x48
    } u3;                                                                   //0x48
};