typedef struct _ACCESS_STATE { LUID OperationID; unsigned char SecurityEvaluated; unsigned char GenerateAudit; unsigned char GenerateOnClose; unsigned char PrivilegesAllocated; unsigned long Flags; unsigned long RemainingDesiredAccess; unsigned long PreviouslyGrantedAccess; unsigned long OriginalDesiredAccess; SECURITY_SUBJECT_CONTEXT SubjectSecurityContext; void *SecurityDescriptor; void *AuxData; union { INITIAL_PRIVILEGE_SET InitialPrivilegeSet; PRIVILEGE_SET PrivilegeSet; } Privileges; unsigned char AuditPrivileges; UNICODE_STRING ObjectName; UNICODE_STRING ObjectTypeName; } ACCESS_STATE, *PACCESS_STATE;