MiDereferenceCombineBlock

VOID __stdcall MiDereferenceCombineBlock(_LIST_ENTRY *CombinePageFreeList, _MI_COMBINE_BLOCK *CombineBlock){
  _LIST_ENTRY *Flink; 

  if( CombineBlock )
  {
    if( *((_QWORD *)CombineBlock + 3) )
    {
      MiDecrementCombinedPte(0i64);
    }
    else
    {
      Flink = CombinePageFreeList->Flink;
      if( CombinePageFreeList->Flink->Blink != CombinePageFreeList )
        __fastfail(3u);
      *(_QWORD *)CombineBlock = Flink;
      *((_QWORD *)CombineBlock + 1) = CombinePageFreeList;
      Flink->Blink = (_LIST_ENTRY *)CombineBlock;
      CombinePageFreeList->Flink = (_LIST_ENTRY *)CombineBlock;
    }
  }
}

Referenced by:

MiSharePages