CHAR __fastcall PspSetJobSiloThreadImpersonationPolicy(INT64 a1, INT64 a2){
int v3;
signed __int32 v4;
int v6;
v3 = 4;
if( (_DWORD)a2 != 2 )
v3 = 2;
v4 = *(_DWORD *)(a1 + 1324);
if( (v4 & (unsigned int)a2) != 0 )
return 1;
while( (v3 & v4) == 0 )
{
v6 = a2 | v4;
v4 = _InterlockedCompareExchange((volatile signed __int32 *)(a1 + 1324), a2 | v4, v4);
if( v4 == v6 )
return 1;
}
return 0;
}