SeSetMandatoryPolicyToken

INT64 __fastcall SeSetMandatoryPolicyToken(VOID *Token, _TOKEN_MANDATORY_POLICY *MandatoryPolicy){
  _ETHREAD *CurrentThread; 
  signed __int32 v6[10]; 
  if( (MandatoryPolicy->Policy & 0xFFFFFFFC) != 0 )
    return 3221225485i64;
  CurrentThread = (_ETHREAD *)KeGetCurrentThread();
  --*((_WORD *)CurrentThread + 242);
  ExAcquireResourceExclusiveLite(*((ERESOURCE **)Token + 6), 1u);
  _InterlockedOr(v6, 0);
  *((_TOKEN_MANDATORY_POLICY *)Token + 53) = (_TOKEN_MANDATORY_POLICY)MandatoryPolicy->Policy;
  *((_QWORD *)Token + 7) = ExpLuidIncrement + _InterlockedExchangeAdd64(&ExpLuid, ExpLuidIncrement);
  _InterlockedOr(v6, 0);
  ExReleaseResourceLite(*((PERESOURCE *)Token + 6));
  KeLeaveCriticalRegionThread((__int64)KeGetCurrentThread());
  return 0i64;
}

Referenced by:

NtCreateLowBoxToken
NtSetInformationToken
SeMakeAnonymousLogonToken
SeMakeAnonymousLogonTokenNoEveryone
SeMakeSystemToken