WheapQueryPshedForErrorSources
INT64 __stdcall WheapQueryPshedForErrorSources(UINT64 *Count, UINT8 **Buffer){
int AllErrorSources;
INT64 result;
__int64 v6[2];
ULONG Size;
int v8;
v6[0] = 0i64;
Size = 0;
v8 = 0;
if( (unsigned int)PshedGetAllErrorSources(&v8, v6, &Size) == -1073741789 )
{
v6[0] = (__int64)PshedAllocateMemory(Size);
if( !v6[0] )
{
LODWORD(WheapStatus) = WheapStatus + 1;
result = 3221225626i64;
HIDWORD(WheapStatus) |= 1u;
return result;
}
AllErrorSources = PshedGetAllErrorSources(&v8, v6, &Size);
if( AllErrorSources >= 0 )
{
*Buffer = (UINT8 *)v6[0];
*(_DWORD *)Count = v8;
return 0i64;
}
LODWORD(WheapStatus) = WheapStatus + 1;
HIDWORD(WheapStatus) |= 0x20u;
dword_140C15F38 = AllErrorSources;
}
else
{
LODWORD(WheapStatus) = WheapStatus + 1;
HIDWORD(WheapStatus) |= 4u;
}
return 3221225473i64;
}Referenced by:
WheaInitialize