HalpAllocPhysicalMemory
UINT64 __stdcall HalpAllocPhysicalMemory(_LOADER_PARAMETER_BLOCK *LoaderBlock, LARGE_INTEGER *MaxPhysicalAddress){
unsigned int v2;
char v3;
char v4;
unsigned int v5;
unsigned __int64 v9;
INT64 v10;
__int64(*v11)[320];
v4 = v3;
v5 = v2;
if( (unsigned int)(HalpAllocationDescriptorArraySize - HalpUsedAllocDescriptors) <= 3 )
{
v9 = HalpAllocPhysicalMemoryInternal((__int64)LoaderBlock, 0i64, 1u, 0);
if( v9 )
{
v10 = HalpMapPhysicalMemory64((LARGE_INTEGER)v9, MmCached);
v11 = (__int64(*)[320])v10;
if( v10 )
{
memset(v10, 0i64);
HalpUsedAllocDescriptors = 0;
HalpAllocationDescriptorArray = v11;
HalpAllocationDescriptorArraySize = 102;
}
}
}
return HalpAllocPhysicalMemoryInternal((__int64)LoaderBlock, MaxPhysicalAddress, v5, v4);
}Referenced by:
ExtEnvAllocatePhysicalMemory
HalpAcpiAllocateMemory
HalpAllocateEarlyPages
HalpAllocateNumaConfigData
HalpAllocateScratchMemory
HalpBlkAllocateAndShadowMemory
HalpBlkAllocatePageTablePage
HalpDmaInitMemory
HalpIommuAllocateAndZeroPageTable
HalpMmAllocateAndInsertPageTablePage
HalpMmAllocateMemoryInternal
HalpSetupAcpiPhase0
HalpSocApiAllocatePhysicalMemory