WheaReportFatalHwErrorDeviceDriverEx

NTSTATUS __fastcall WheaReportFatalHwErrorDeviceDriverEx(
        UINT64 a1,
        INT64 a2,
        INT8 *a3,
        UINT64 a4,
        INT8 *Src,
        UINT64 Size,
        OWORD *a7,
        INT64 a8,
        INT64 pszSrc,
        INT64 pszSrc_8,
        INT64 a11){
  size_t v11; 
  _DWORD *HwErrorReportDeviceDriver; 
  _DWORD *v14; 
  int v15; 
  INT64 v17[2]; 
  _NTSTRSAFE_PSTR pszDest[4]; 
  _BYTE *v19; 

  v11 = a4;
  *(_OWORD *)v17 = 0i64;
  *(_OWORD *)pszDest = 0i64;
  v19 = 0i64;
  HwErrorReportDeviceDriver = WheaCreateHwErrorReportDeviceDriver(a1);
  v14 = HwErrorReportDeviceDriver;
  if( !HwErrorReportDeviceDriver )
    return -1073741670;
  WheaHwErrorReportSetFatalSeverityDeviceDriver((INT64)HwErrorReportDeviceDriver, a11);
  WheaHwErrorReportGetLogDataBufferDeviceDriver(v14);
  memmove(0i64, Src, Size);
  v15 = WheaAddHwErrorReportSectionDeviceDriver((INT64)v14, v11, (INT64)v17);
  if( v15 >= 0 )
  {
    memmove(*(VOID **)((char *)v17 + 4), a3, v11);
    **(_OWORD **)pszDest = *a7;
    *v19 = 1;
    if( pszSrc )
      RtlStringCchCopyA(*(CHAR **)&pszDest[2], 0x14ui64, (CHAR *)pszSrc);
    return WheaHwErrorReportSubmitDeviceDriver((INT64)v14);
  }
  else
  {
    WheaHwErrorReportAbandonDeviceDriver(v14);
  }
  return v15;
}

Referenced by:

No references.