MiInitializeLargeMdlLeafPfns

VOID __stdcall MiInitializeLargeMdlLeafPfns(UINT64 *a1, INT64 a2){
  UINT64 v3; 
  __int64 v5; 
  _QWORD *v6; 
  unsigned __int64 LeafPfnBuddy; 
  _QWORD *v8; 
  NTSTATUS PfnPageSizeIndex; 
  INT64 v10; 

  v3 = *(_QWORD *)(a2 + 72);
  if( (*(_DWORD *)(a2 + 8) & 0x80000200) != 0 )
    v5 = 0i64;
  else
    v5 = MiSwizzleInvalidPte(128i64);
  v6 = (_QWORD *)*a1;
  if( *a1 )
  {
    do
    {
      LeafPfnBuddy = MiGetLeafPfnBuddy(v6);
      *a1 = LeafPfnBuddy;
      v8 = (_QWORD *)LeafPfnBuddy;
      PfnPageSizeIndex = MiGetPfnPageSizeIndex((INT64)v6);
      LODWORD(v10) = *(_DWORD *)(a2 + 8);
      MiInitializeMdlLeafPfns((INT64)v6, MiLargePageSizes[PfnPageSizeIndex], v3, v5, v10);
      v6 = v8;
    }
    while( v8 && !(unsigned int)KeShouldYieldProcessor() );
  }
}

Referenced by:

MiDoGangAssignment