typedef struct _SEGMENT { CONTROL_AREA *ControlArea; unsigned long TotalNumberOfPtes; SEGMENT_FLAGS SegmentFlags; unsigned __int64 NumberOfCommittedPages; unsigned __int64 SizeOfSegment; union { MMEXTEND_INFO *ExtendInfo; void *BasedAddress; }; EX_PUSH_LOCK SegmentLock; union { unsigned __int64 ImageCommitment; EPROCESS *CreatingProcess; } u1; union { MI_SECTION_IMAGE_INFORMATION *ImageInformation; void *FirstMappedVa; } u2; MMPTE *PrototypePte; MMPTE ThePtes[1]; } SEGMENT, *PSEGMENT;