typedef union _KGDTENTRY64 { struct { unsigned short LimitLow; unsigned short BaseLow; union { struct { unsigned char BaseMiddle; unsigned char Flags1; unsigned char Flags2; unsigned char BaseHigh; } Bytes; struct { unsigned long BaseMiddle : 8; unsigned long Type : 5; unsigned long Dpl : 2; unsigned long Present : 1; unsigned long LimitHigh : 4; unsigned long System : 1; unsigned long LongMode : 1; unsigned long DefaultBig : 1; unsigned long Granularity : 1; unsigned long BaseHigh : 8; } Bits; }; unsigned long BaseUpper; unsigned long MustBeZero; }; unsigned __int64 Alignment; } KGDTENTRY64, *PKGDTENTRY64;