PopDirectedDripsQueryEnabledMitigations

NTSTATUS __stdcall PopDirectedDripsQueryEnabledMitigations(){
  __int64 v0; 
  WCHAR v1; 
  INT64 v2; 
  char v3; 
  char v4; 
  __int64 v5; 
  NTSTATUS result; 
  unsigned int v7; 
  NTSTATUS Ps4Support; 
  INT64 enabled; 
  unsigned int v10; 

  v10 = 0;
  v3 = 0;
  v4 = 0;
  v5 = v0;
  result = PopDirectedDripsQueryRegistryValues(v0, &v10, v1, v2);
  v7 = v10;
  if( (v10 & 1) != 0 )
  {
    v3 = 1;
    v7 = v10 & 0xFFFFFFFE;
  }
  if( (v7 & 2) != 0 )
  {
    v4 = 1;
    v7 &= ~2u;
  }
  if( (v7 & 8) == 0 )
  {
    Ps4Support = PopDirectedDripsQueryPs4Support();
    if( Ps4Support == 1 )
    {
      v4 = 1;
    }
    else if( Ps4Support )
    {
      v4 = 0;
    }
    LODWORD(enabled) = 0;
    wil_details_FeatureReporting_ReportUsageToService(
      (wil_details_FeatureReportingCache *)&stru_140CF2E80 + 630,
      0x12F004Eui64,
      0i64,
      0i64,
      (FEATURE_LOGGED_TRAITS *)&Feature_PdttSupport_logged_traits,
      enabled);
  }
  if( v3 )
    v7 |= 1u;
  if( v4 )
    v7 |= 2u;
  *(_DWORD *)(v5 + 48) = v7;
  return result;
}

Referenced by:

PopDirectedDripsEngage
PopDirectedDripsInitializePhase3