VerifierMmBuildMdlForNonPagedPool

VOID __stdcall VerifierMmBuildMdlForNonPagedPool(_MDL *MemoryDescriptorList){
  unsigned __int8 CurrentIrql; 
  UINT64 Param4; 
  int v4; 
  UINT64 v5; 
  VOID *retaddr; 
  CurrentIrql = KeGetCurrentIrql();
  if( !CurrentIrql && MmDeterminePoolType(MemoryDescriptorList->StartVa) && (MmVerifierData & 0x800) != 0 )
    VerifierBugCheckIfAppropriate(0xC4ui64, 0x7Fui64, 0i64, (UINT64)MemoryDescriptorList, Param4, v5);
  ((void(__fastcall *)(_MDL *))pXdvMmBuildMdlForNonPagedPool)(MemoryDescriptorList);
  if( CurrentIrql <= 2u
    && (MmVerifierData & 0x800) != 0
    && !VerifierNewRuleWorkaround
    && !(unsigned int)MmAreMdlPagesLocked(MemoryDescriptorList) )
  {
    VfUtilCheckRuleEnforcement(retaddr);
    if( v4 == 1 )
      VerifierBugCheckIfAppropriate(
        0xC4ui64,
        0x140ui64,
        CurrentIrql,
        (UINT64)MemoryDescriptorList,
        (UINT64)MemoryDescriptorList->StartVa,
        v5);
  }
}

Referenced by:

No references.