RtlAddAuditAccessObjectAce

NTSTATUS __stdcall RtlAddAuditAccessObjectAce(
        PACL Acl,
        UINT64 AceRevision,
        UINT64 AceFlags,
        _ACCESS_MASK AccessMask,
        _GUID *ObjectTypeGuid,
        _GUID *InheritedObjectTypeGuid,
        PSID Sid,
        BOOL AuditSuccess,
        BOOL AuditFailure){
  unsigned int v9; 
  UINT64 v10; 

  v9 = AceFlags | 0x40;
  if( !AuditSuccess )
    v9 = AceFlags;
  v10 = v9;
  LODWORD(v10) = v9 | 0x80;
  if( !AuditFailure )
    v10 = v9;
  if( ObjectTypeGuid || InheritedObjectTypeGuid )
    return RtlpAddKnownObjectAce(Acl, AceRevision, v10, AccessMask, ObjectTypeGuid, InheritedObjectTypeGuid, Sid, 7u);
  else
    return RtlpAddKnownAce(Acl, AceRevision, v10, *(UINT64 *)&AccessMask, Sid, 2u);
}

Referenced by:

LocalGetAclForString