MiDeletePfnBitMaps
VOID __stdcall MiDeletePfnBitMaps(UINT64 *a1){
__int64 *v2;
unsigned int i;
unsigned __int64 v4;
UINT64 *v5;
VOID *v6;
v2 = MiLargePageSizes;
for( i = 0; i < 3; ++i )
{
if( i >= 2 )
{
if( a1 != (UINT64 *)&Irp )
goto LABEL_7;
v4 = 512i64;
v5 = a1 + 769;
}
else
{
v4 = *v2;
v5 = &a1[2 * i + 634];
}
MiDeleteSparseRange(
(VOID *)*v5,
(unsigned int)((((0x1000000000i64 / v4 + (0x1000000000i64 % v4 != 0) + 7i64) >> 3) + 4095) >> 12));
*v5 = 0i64;
LABEL_7:
++v2;
}
MiDeleteSparseRange((VOID *)a1[640], 8ui64);
a1[640] = 0i64;
MiDeleteSparseRange((VOID *)a1[641], 0x80ui64);
v6 = (VOID *)a1[638];
a1[641] = 0i64;
MiDeleteSparseRange(v6, 0x8000ui64);
a1[638] = 0i64;
}Referenced by:
MiCreatePfnBitMaps
MiDeletePartitionResources