SeIsAppContainerOrIdentifyLevelContext
INT64 __fastcall SeIsAppContainerOrIdentifyLevelContext(
_SECURITY_SUBJECT_CONTEXT *SubjectSecurityContext,
UINT8 *IsAppContainerContext){
_SECURITY_SUBJECT_CONTEXT *p_SubjectContext;
unsigned int v5;
UINT64 v7;
struct _SECURITY_SUBJECT_CONTEXT SubjectContext;
INT64 AccessStatus;
UINT64 GrantedAccess;
LODWORD(AccessStatus) = 0;
LODWORD(GrantedAccess) = 0;
*IsAppContainerContext = 1;
memset(&SubjectContext, 0, sizeof(SubjectContext));
if( !SubjectSecurityContext )
SeCaptureSubjectContext(&SubjectContext);
p_SubjectContext = &SubjectContext;
if( SubjectSecurityContext )
p_SubjectContext = SubjectSecurityContext;
LODWORD(v7) = 0;
if( SeAccessCheck(
SeNullDaclSd,
p_SubjectContext,
0,
1ui64,
v7,
0i64,
(GENERIC_MAPPING *)&SystemContextGenericMapping,
1,
&GrantedAccess,
&AccessStatus) )
{
*IsAppContainerContext = 0;
}
v5 = 0;
if( (_DWORD)AccessStatus != -1073741790 )
v5 = AccessStatus;
if( !SubjectSecurityContext )
SeReleaseSubjectContext(p_SubjectContext);
return v5;
}Referenced by:
IopDoFullTraverseCheck
IopIsSecurityContextAppContainer
NtPowerInformation
PfpPrivSourceEnum
PopPowerRequestActionInfo