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