IoSaveBugCheckRecoveryStatus
VOID __fastcall IoSaveBugCheckRecoveryStatus(INT64 *a1){
int v2;
char v3;
int v4;
int v5;
__int128 *v6;
__int128 v7[2];
unsigned int BootId;
char v9;
__int128 v10[2];
char v11;
__int128 Src[2];
char v13;
v13 = 0;
v11 = 0;
v2 = *(_DWORD *)a1;
v3 = 0;
BootId = 0;
v4 = v2 | 0x2A00;
v9 = 0;
memset(Src, 0, sizeof(Src));
memset(v10, 0, sizeof(v10));
memset(v7, 0, sizeof(v7));
if( v2 )
{
if( v2 != 1 )
{
v3 = *((_BYTE *)a1 + 8);
v5 = 5;
v6 = v7;
BootId = KUSER_SHARED_DATA.BootId;
v9 = v3;
goto LABEL_7;
}
v6 = v10;
v11 = *((_BYTE *)a1 + 8);
}
else
{
v6 = Src;
v13 = *((_BYTE *)a1 + 8);
}
v5 = 1;
LABEL_7:
*((_DWORD *)v6 + 3) = 0;
*((_DWORD *)v6 + 2) = v5 + 32;
*(_DWORD *)v6 = 1733060695;
*((_DWORD *)v6 + 1) = 1;
*((_DWORD *)v6 + 5) = -2147483606;
*((_DWORD *)v6 + 4) = v4;
*((_DWORD *)v6 + 6) = 8;
*((_DWORD *)v6 + 7) = v5;
WheaLogInternalEvent(v6);
if( v3 )
IopWriteBugCheckSelEntries();
}Referenced by:
KiAttemptBugcheckRecovery