HalpIommuInitializeDmaGuardPolicy

__int64 __fastcall HalpIommuInitializeDmaGuardPolicy(__int64 a1, __int64 a2, __int64 a3){
  char v4; 
  UINT8 *v5; 
  __int64 v6; 
  char v7; 
  __int64 result; 
  char v9; 
  char v10; 

  if( byte_140C49B2C )
  {
    v10 = 0;
    result = ((__int64(__fastcall *)(char *, __int64, __int64))qword_140C4A2F0)(&v10, a2, a3);
    v9 = 0;
    if( (int)result >= 0 )
      v9 = v10;
    if( (int)result >= 0 && v9 )
    {
      dword_140C49B60[0] = 3;
      dword_140C49B28 = 1;
    }
  }
  else
  {
    v4 = 0;
    if( a1 )
    {
      v5 = *(UINT8 **)(a1 + 216);
      if( v5 )
      {
        strstr(v5, (UINT8 *)"DMAGUARDPOLICY=ENABLE", a3);
        if( v6 )
          v4 = 1;
      }
      v7 = v4;
      if( (*(_BYTE *)(*(_QWORD *)(a1 + 240) + 2616i64) & 8) != 0 )
        v7 = 1;
      if( v7 )
        goto LABEL_17;
    }
    if( byte_140C49B40 )
    {
LABEL_17:
      dword_140C49B60[0] = 3;
      dword_140C49B28 = 1;
    }
    return 0i64;
  }
  return result;
}

Referenced by:

HalpIommuInitSystem