IopAddMiniDumpPagesToPartialKernelDump

__int64 __fastcall IopAddMiniDumpPagesToPartialKernelDump(
        unsigned int a1,
        UINT64 a2,
        _QWORD *a3,
        INT64 a4,
        INT64 a5,
        INT64 a6,
        INT64 a7,
        UINT64 a8){
  __int64 result; 
  __int64 v10; 
  __int64 v11; 
  _KTRAP_FRAME *v12; 
  UINT64 v13; 
  __int64 v14[2]; 
  __int64(__fastcall *v15[5])(_QWORD, __int64, __int64); 
  __int64 v16; 
  v16 = 0i64;
  v13 = 0i64;
  LODWORD(a8) = 0;
  if( !AvailablePagesForPartialDump )
    return 3221225507i64;
  v10 = *(_QWORD *)(CrashdmpDumpBlock + 8);
  v11 = *(_QWORD *)(v10 + 48);
  v15[1] = 0i64;
  LODWORD(v16) = v16 | 3;
  v14[0] = v11;
  v14[1] = v10 + 56;
  v15[2] = (__int64(__fastcall *)(_QWORD, __int64, __int64))v14;
  v15[4] = (__int64(__fastcall *)(_QWORD, __int64, __int64))&AvailablePagesForPartialDump;
  v15[0] = (__int64(__fastcall *)(_QWORD, __int64, __int64))IoSetDumpRangeForPartialKernelDump;
  v15[3] = (__int64(__fastcall *)(_QWORD, __int64, __int64))v10;
  IopUpdateMinidumpContext(a1, a2, (UINT64)a3, a4, a5, (_CONTEXT *)a6, (_KTHREAD *)a7, v12);
  result = MmAddUnloadedDriverInformationToCrashDump(v15);
  if( (int)result >= 0 )
  {
    result = IopMarkPagesForLoadedDriverInformation(v15);
    if( (int)result >= 0 )
    {
      if( !IopCalculateStackInformation(a7, a6, &v13, &a8)
        || (result = IopMarkPagesForRunTimeTriageDataBlocks(v15, a6, v13, v13 + (unsigned int)a8), (int)result >= 0) )
      {
        result = IopMarkPagesForDpcData(v15);
        if( (int)result >= 0 )
        {
          result = MmAddRangeToCrashDump(v15, *(_QWORD *)(a7 + 184), 2624i64);
          if( (int)result >= 0 )
          {
            result = MmAddRangeToCrashDump(v15, a7, 2200i64);
            if( (int)result >= 0 )
            {
              result = MmAddRangeToCrashDump(v15, v13, (unsigned int)a8);
              if( (int)result >= 0 )
                return IopAddTriageDumpDataToPartialKernelDump(v15, *(__int64 ***)(CrashdmpDumpBlock + 1416));
            }
          }
        }
      }
    }
  }
  return result;
}

Referenced by:

IoAddPagesForPartialKernelDump