WheapInitializeErrorRecordWrapper
INT64 __fastcall WheapInitializeErrorRecordWrapper(INT64 a1, INT64 a2, INT64 a3){
int *v3;
unsigned int v4;
int v5;
INT64 result;
int v7;
*(_DWORD *)(a1 + 46) = -1;
v3 = (int *)(a1 + 168);
*(_DWORD *)(a1 + 16) = a2;
*(_QWORD *)(a1 + 32) = a3;
*(_WORD *)(a1 + 44) = 528;
*(GUID *)(a1 + 104) = WHEA_RECORD_CREATOR_GUID;
*(_DWORD *)(a1 + 40) = 1380274243;
*(_WORD *)(a1 + 50) = *(_WORD *)(a3 + 64);
*(_DWORD *)(a1 + 60) = a2 - 40;
v4 = 0;
*(_DWORD *)(a1 + 52) = 3;
v5 = *(_DWORD *)(a3 + 64);
result = (unsigned int)(9 * v5);
v7 = 72 * v5 + 128;
if( v5 )
{
do
{
*v3 = v7;
++v4;
v3[1] = *(_DWORD *)(a3 + 68);
v3 += 18;
result = 768i64;
*((_WORD *)v3 - 32) = 768;
v7 += *(_DWORD *)(a3 + 68);
}
while( v4 < *(_DWORD *)(a3 + 64) );
}
return result;
}Referenced by:
WheapAllocErrorRecord
WheapInitializeErrorSource