VmProbeAndLockPages

NTSTATUS __stdcall VmProbeAndLockPages(ULONG_PTR BugCheckParameter3){
  char v1; 
  unsigned int v2; 
  __int16 *v3; 
  NTSTATUS v4; 
  INT64 v5; 
  INT64 v6; 

  v3 = *(__int16 **)&BugCheckParameter3;
  v4 = 0;
  if( v1 || v2 > 1 )
    return -1073741811;
  if( *(_QWORD *)(*(_QWORD *)&BugCheckParameter3 + 32i64)
     + *(unsigned int *)(*(_QWORD *)&BugCheckParameter3 + 40i64)
     + (unsigned __int64)*(unsigned int *)(*(_QWORD *)&BugCheckParameter3 + 44i64) <= 0x7FFFFFFEFFFFi64 )
  {
    MiProbeAndLockPages(*(INT64 *)&BugCheckParameter3, 0, v2 != 0);
    if( (v3[5] & 0xFFFFFF77) == 258 )
    {
      MmUpdateMdlTrackerForMdlSwitch(v3);
      return v4;
    }
    MmUnlockPages((INT64)v3, v5, v6);
  }
  return -1073741637;
}

Referenced by:

No references.