SepGetDefaultsSubjectContext

VOID __stdcall SepGetDefaultsSubjectContext(
        _SECURITY_SUBJECT_CONTEXT *SubjectContext,
        VOID **Owner,
        VOID **Group,
        VOID **ServerOwner,
        VOID **ServerGroup,
        VOID **IntegrityLabel,
        VOID **TrustLabel,
        _ACL **Dacl){
  unsigned int *ClientToken; 
  unsigned int *PrimaryToken; 
  VOID *v11; 
  _ACL *v12; 
  VOID **v13; 
  _SECURITY_SUBJECT_CONTEXT *v14; 

  ClientToken = (unsigned int *)SubjectContext->ClientToken;
  PrimaryToken = (unsigned int *)SubjectContext->PrimaryToken;
  if( !ClientToken )
    ClientToken = (unsigned int *)SubjectContext->PrimaryToken;
  v11 = (VOID *)*((_QWORD *)ClientToken + 21);
  *Owner = *(VOID **)(*((_QWORD *)ClientToken + 19) + 16i64 * ClientToken[36]);
  v12 = (_ACL *)*((_QWORD *)ClientToken + 23);
  *Group = v11;
  *Dacl = v12;
  *ServerOwner = *(VOID **)(*((_QWORD *)PrimaryToken + 19) + 16i64 * PrimaryToken[36]);
  *ServerGroup = (VOID *)*((_QWORD *)PrimaryToken + 21);
  SepLocateTokenIntegrity();
  if( v13 )
    *IntegrityLabel = *v13;
  else
    *IntegrityLabel = (VOID *)SepDefaultMandatorySid;
  *TrustLabel = SepLocateTokenTrustLevel(v14);
}

Referenced by:

RtlpSetSecurityObject