typedef struct _MMVAD_LONG { union { __int64 Balance : 2; MMVAD *Parent; } u1; MMVAD *LeftChild; MMVAD *RightChild; unsigned __int64 StartingVpn; unsigned __int64 EndingVpn; union { unsigned __int64 LongFlags; MMVAD_FLAGS VadFlags; } u; EX_PUSH_LOCK PushLock; union { unsigned __int64 LongFlags3; MMVAD_FLAGS3 VadFlags3; } u5; union { unsigned long LongFlags2; MMVAD_FLAGS2 VadFlags2; } u2; SUBSECTION *Subsection; MMPTE *FirstPrototypePte; MMPTE *LastContiguousPte; LIST_ENTRY ViewLinks; EPROCESS *VadsProcess; union { LIST_ENTRY List; MMADDRESS_LIST Secured; } u3; union { MMBANKED_SECTION *Banked; MMEXTEND_INFO *ExtendedInfo; } u4; } MMVAD_LONG, *PMMVAD_LONG;