ObCreateKernelObjectsSD

NTSTATUS __stdcall ObCreateKernelObjectsSD(PSECURITY_DESCRIPTOR SecurityDescriptor){
  int Acl; 
  NTSTATUS v3; 
  int v4; 
  unsigned int v5; 
  VOID **PoolWithTag; 
  UINT64 v7; 
  _ACL *v8; 

  Acl = RtlCreateSecurityDescriptor(SecurityDescriptor, 1ui64);
  if( Acl >= 0 )
  {
    v3 = RtlLengthSid((INT64)SeWorldSid);
    v4 = RtlLengthSid((INT64)SeAliasAdminsSid) + v3;
    v5 = RtlLengthSid((INT64)SeLocalSystemSid) + 44 + v4;
    PoolWithTag = ExAllocatePoolWithTag(1ui64, v5, 1818452292i64);
    v8 = (_ACL *)PoolWithTag;
    if( PoolWithTag )
    {
      Acl = RtlCreateAcl((PACL)PoolWithTag, (_ACL)v5, 2ui64, v7);
      if( Acl >= 0 )
      {
        Acl = RtlpAddKnownAce(v8, 2ui64, 0i64, 0x20003ui64, SeWorldSid, 0);
        if( Acl >= 0 )
        {
          Acl = RtlpAddKnownAce(v8, 2ui64, 0i64, 0xF000Fui64, SeAliasAdminsSid, 0);
          if( Acl >= 0 )
          {
            Acl = RtlpAddKnownAce(v8, 2ui64, 0i64, 0xF000Fui64, SeLocalSystemSid, 0);
            if( Acl >= 0 )
            {
              Acl = RtlSetDaclSecurityDescriptor(SecurityDescriptor, 1u, v8, 0);
              if( Acl >= 0 )
              {
                v8 = 0i64;
                Acl = 0;
              }
            }
          }
        }
      }
      if( v8 )
        ExFreePoolWithTag(v8, 0);
    }
    else
    {
      return -1073741670;
    }
  }
  return Acl;
}

Referenced by:

MiCreatePartitionNamespace
ObpInitializeRootNamespace