HalpIommuLogEarlyFault

UINT8 __stdcall HalpIommuLogEarlyFault(){
  REGHANDLE v0; 
  UINT8 result; 
  REGHANDLE v2; 
  _EVENT_DATA_DESCRIPTOR UserData; 
  __int64 v4; 
  int v5; 
  int v6; 
  __int64 v7; 
  int v8; 
  int v9; 
  __int64 v10; 
  int v11; 
  int v12; 

  v0 = qword_140C4A320;
  result = EtwEventEnabled(qword_140C4A320, &HAL_ETW_EVENT_IOMMU_FAULT_INIT);
  if( result )
  {
    EtwWriteEx(v0, &HAL_ETW_EVENT_IOMMU_FAULT_INIT, 0i64, 0, 0, 0, 0, 0i64);
    v2 = qword_140C4A320;
    result = EtwEventEnabled(qword_140C4A320, &HAL_ETW_EVENT_IOMMU_FAULT);
    if( result )
    {
      if( byte_140C4A328 )
      {
        if( HalpIommuGlobalEventBuffer )
        {
          UserData.Reserved = 0;
          v6 = 0;
          v9 = 0;
          v12 = 0;
          v4 = HalpIommuGlobalEventBuffer + 8;
          v7 = HalpIommuGlobalEventBuffer + 16;
          v10 = HalpIommuGlobalEventBuffer + 24;
          UserData.Ptr = HalpIommuGlobalEventBuffer;
          UserData.Size = 8;
          v5 = 8;
          v8 = 4;
          v11 = 8;
          return EtwWriteEx(v2, &HAL_ETW_EVENT_IOMMU_FAULT, 0i64, 0, 0, 0, 4u, &UserData);
        }
      }
    }
  }
  return result;
}

Referenced by:

HalpIommuInitSystem