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