MiPageHasRelocations

NTSTATUS __stdcall MiPageHasRelocations(_CONTROL_AREA *ControlArea, UINT64 ImagePteIndex){
  __int64 *NumberOfPfnReferences; 
  __int64 v3; 
  int v4; 
  int v5; 
  int v6; 

  NumberOfPfnReferences = (__int64 *)ControlArea->NumberOfPfnReferences;
  v3 = *NumberOfPfnReferences;
  if( (unsigned int)ImagePteIndex >= (unsigned __int64)NumberOfPfnReferences[7] )
    return 0;
  ImagePteIndex = (unsigned int)ImagePteIndex;
  while( !*(_QWORD *)(v3 + 8i64 * (unsigned int)ImagePteIndex) )
  {
    LOBYTE(v4) = MiDoesPageRequireRetpolineFixups((INT64)(NumberOfPfnReferences + 9), ImagePteIndex);
    if( v4 )
      break;
    ImagePteIndex = (unsigned int)(v5 + 1);
    if( (_DWORD)ImagePteIndex != v6 )
      return 0;
  }
  return 1;
}

Referenced by:

MiRevertRelocatedImagePfn
MiWalkEntireImage