MiInsertVadEvent
VOID __stdcall MiInsertVadEvent(_MMVAD_SHORT *Vad, _MI_VAD_EVENT_BLOCK *Block, UINT64 LockNeeded){
LONG *v5;
__int64 v6;
char v7;
INT64 v8;
KIRQL v9;
UINT8 v10;
if( (_DWORD)LockNeeded == 1 )
{
v5 = &dword_140C4F4C0;
v6 = *((_QWORD *)KeGetCurrentThread() + 23);
v7 = *(_BYTE *)(v6 + 1848);
v8 = v6 + 1664;
if( (v7 & 7) != 2 )
v5 = (LONG *)(v8 + 192);
v9 = ExAcquireSpinLockExclusive(v5);
v5[1] = 0;
v10 = v9;
}
else
{
v10 = 17;
v8 = 0i64;
}
*(_QWORD *)Block = *((_QWORD *)Vad + 7);
*((_QWORD *)Vad + 7) = Block;
if( v10 != 17 )
MiUnlockWorkingSetExclusive(v8, v10);
}Referenced by:
MiAddSecureEntry
MiCreateLargePageVad
MiCreatePlaceholderStorage
MiCreateRotateView
MiCreateUserPhysicalView
MiCreateVadEventBitmap
MiMapViewOfImageSection
MiWaitForVadDeletion