PopDirectedDripsQueryEnabledMitigations
INT64 PopDirectedDripsQueryEnabledMitigations(void){
INT64 v0;
WCHAR v1;
char v2;
char v3;
INT64 v4;
INT64 result;
unsigned int v6;
int Ps4Support;
INT64 enabled;
unsigned int v9;
v9 = 0;
v2 = 0;
v3 = 0;
v4 = v0;
result = PopDirectedDripsQueryRegistryValues(v0, &v9, v1);
v6 = v9;
if( (v9 & 1) != 0 )
{
v2 = 1;
v6 = v9 & 0xFFFFFFFE;
}
if( (v6 & 2) != 0 )
{
v3 = 1;
v6 &= ~2u;
}
if( (v6 & 8) == 0 )
{
Ps4Support = PopDirectedDripsQueryPs4Support();
if( Ps4Support == 1 )
{
v3 = 1;
}
else if( Ps4Support )
{
v3 = 0;
}
LODWORD(enabled) = 0;
wil_details_FeatureReporting_ReportUsageToService(
&Feature_DirectedFx__private_reporting,
0x12F004Eui64,
0i64,
0i64,
(FEATURE_LOGGED_TRAITS *)&Feature_PdttSupport_logged_traits,
enabled);
}
if( v2 )
v6 |= 1u;
if( v3 )
v6 |= 2u;
*(_DWORD *)(v4 + 48) = v6;
return result;
}Referenced by:
PopDirectedDripsEngage
PopDirectedDripsInitializePhase3