HalpIommuInitializeDmaGuardPolicy

INT64 __fastcall HalpIommuInitializeDmaGuardPolicy(INT64 a1, INT64 a2, INT64 a3){
  char v4; 
  CHAR *v5; 
  char v6; 
  INT64 result; 
  char v8; 
  char v9; 
  if( HalpHvIommu )
  {
    v9 = 0;
    result = ((__int64(__fastcall *)(char *, INT64, INT64))qword_140C4A2F0)(&v9, a2, a3);
    v8 = 0;
    if( (int)result >= 0 )
      v8 = v9;
    if( (int)result >= 0 && v8 )
    {
      HalpIommuPolicy = 3;
      HalpIommuSecurityPolicy = 1;
    }
  }
  else
  {
    v4 = 0;
    if( a1 )
    {
      v5 = *(CHAR **)(a1 + 216);
      if( v5 && strstr(v5, "DMAGUARDPOLICY=ENABLE") )
        v4 = 1;
      v6 = v4;
      if( (*(_BYTE *)(*(_QWORD *)(a1 + 240) + 2616i64) & 8) != 0 )
        v6 = 1;
      if( v6 )
        goto LABEL_17;
    }
    if( HalpIommuDmaGuardTableOptIn )
    {
LABEL_17:
      HalpIommuPolicy = 3;
      HalpIommuSecurityPolicy = 1;
    }
    return 0i64;
  }
  return result;
}

Referenced by:

HalpIommuInitSystem