PspSiloInitializeSuiteMask

NTSTATUS __stdcall PspSiloInitializeSuiteMask(_SILO_USER_SHARED_DATA *UserSharedData){
  int SuiteMaskStringFromRegistry; 
  VOID *v3; 
  VOID *v4; 
  _ACL *v5; 
  unsigned int v6; 
  _UNICODE_STRING UnicodeString; 
  UINT8 IsMultiUserTS; 

  IsMultiUserTS = 0;
  UnicodeString = 0i64;
  SuiteMaskStringFromRegistry = PspSiloGetSuiteMaskStringFromRegistry(&UnicodeString);
  if( SuiteMaskStringFromRegistry >= 0 )
  {
    SuiteMaskStringFromRegistry = PspSiloGetMultiUserTsFromRegistry(&IsMultiUserTS);
    if( SuiteMaskStringFromRegistry >= 0 )
    {
      LOBYTE(v3) = IsMultiUserTS;
      ExGetSuiteMask((_UNICODE_STRING *)UnicodeString.Buffer, v3, v4, v5, *(_ACL **)&UnicodeString.Length);
      UserSharedData->SuiteMask = v6;
    }
    if( UnicodeString.Buffer )
      RtlFreeAnsiString(&UnicodeString);
  }
  return SuiteMaskStringFromRegistry;
}

Referenced by:

PspSiloInitializeUserSharedData