MmAcquireLoadLock
_ETHREAD *MmAcquireLoadLock(){
_ETHREAD *CurrentThread;
CurrentThread = (_ETHREAD *)KeGetCurrentThread();
if( CurrentThread == (_ETHREAD *)qword_140C4CA18 )
{
++dword_140C4CA20;
}
else
{
--*((_WORD *)CurrentThread + 242);
ExAcquirePushLockExclusiveEx((UINT64)&qword_140C4CA10, 0i64);
qword_140C4CA18 = (__int64)CurrentThread;
dword_140C4CA20 = 1;
}
return CurrentThread;
}Referenced by:
IopLoadDriver
MiFlushDeferredRetpolineImageLoadEvents
MiFlushStrongCodeDriverLoadFailures
MiInitializeRetpoline
MiLoadHotPatch
MiLogHotPatchRundown
MiObtainSectionForDriver
MiQueryProcessActivePatches
MiReloadBootLoadedDrivers
MiSessionUnloadAllImages
MiShutdownSystem
MiUnloadHotPatch
MmAddVerifierSpecialThunks
MmAddVerifierThunks
MmBackSystemImageWithPagefile
MmChangeImageProtection
MmDiscardDriverSection
MmEnableVerifierForDriver
MmEnumerateSystemImages
MmFreeBootDriverInitializationCode
MmLoadSystemImageEx
MmMarkHypercallPageRetpolineBit
MmRegisterHotPatch
MmUnloadSystemImage
MmWriteSystemImageTracepoint
VfAddVerifierEntry