HalpConsumeLowMemory
VOID __fastcall HalpConsumeLowMemory(INT64 a1){
INT64 v1;
__int64 v2;
unsigned __int64 v3;
__int64 v4;
unsigned __int64 v5;
unsigned __int64 v6;
__int64 *v7;
__int64 **v8;
v1 = a1 + 32;
v2 = *(_QWORD *)(a1 + 32);
if( v2 != a1 + 32 )
{
do
{
v3 = *(int *)(v2 + 16);
if( (unsigned int)v3 > 0x23 || (v4 = 0xBC4400048i64, !_bittest64(&v4, v3)) )
{
v5 = *(_QWORD *)(v2 + 24);
if( v5 < 0x100 )
{
v6 = v5 + *(_QWORD *)(v2 + 32);
if( v6 > 0x100 )
{
v7 = &(*HalpAllocationDescriptorArray)[5 * (unsigned int)HalpUsedAllocDescriptors++];
v7[3] = 256i64;
v7[4] = v6 - 256;
*((_DWORD *)v7 + 4) = *(_DWORD *)(v2 + 16);
v8 = *(__int64 ***)(v2 + 8);
if( *v8 != (__int64 *)v2 )
__fastfail(3u);
v7[1] = (__int64)v8;
*v7 = v2;
*v8 = v7;
*(_QWORD *)(v2 + 8) = v7;
*(_QWORD *)(v2 + 32) = 256i64 - *(_QWORD *)(v2 + 24);
}
*(_DWORD *)(v2 + 16) = 26;
}
}
v2 = *(_QWORD *)v2;
}
while( v2 != v1 );
}
}Referenced by:
HalpMmInitSystem