ExNotifyPlatformBinaryExecuted
VOID __stdcall ExNotifyPlatformBinaryExecuted(){
_ETHREAD *CurrentThread;
PVOID v1;
char v2;
CurrentThread = (_ETHREAD *)KeGetCurrentThread();
--*((_WORD *)CurrentThread + 242);
ExAcquirePushLockExclusiveEx((UINT64)&ExpPlatformBinaryLock, 0i64);
v1 = ExpPlatformBinaryTableInformation;
ExpPlatformBinaryTableInformation = (PVOID)-1i64;
v2 = _InterlockedExchangeAdd64((volatile signed __int64 *)&ExpPlatformBinaryLock, 0xFFFFFFFFFFFFFFFFui64);
if( (v2 & 2) != 0 && (v2 & 4) == 0 )
ExfTryToWakePushLock((volatile INT64 *)&ExpPlatformBinaryLock);
KeAbPostRelease(&ExpPlatformBinaryLock);
KeLeaveCriticalRegionThread((__int64)CurrentThread);
if( v1 )
ExFreePoolWithTag(v1, 0x54425057u);
}Referenced by:
CmCompleteRegistryInitialization