PopAcquireAdaptiveLock

VOID __stdcall PopAcquireAdaptiveLock(UINT8 Win32kActivation){
  int v1; 
  _ETHREAD *CurrentThread; 
  union _LARGE_INTEGER Interval; 
  __int128 v5; 
  __int64 v6; 
  v1 = -1;
  v6 = 0i64;
  v5 = 0i64;
  if( !Win32kActivation )
  {
    v1 = PoBlockConsoleSwitch(&v5);
    Interval.QuadPart = -100000i64;
    while( v1 != (_DWORD)PopConsoleContext )
      KeDelayExecutionThread(0, 0, &Interval);
  }
  CurrentThread = (_ETHREAD *)KeGetCurrentThread();
  --*((_WORD *)CurrentThread + 242);
  ExAcquireResourceExclusiveLite(&PopAdpmLock, 1u);
  PopAdpmLockThread = (__int64)KeGetCurrentThread();
  if( !Win32kActivation )
  {
    PopLazyContext = 0i64;
    LOBYTE(PopLazyContext) = 1;
    DWORD1(PopLazyContext) = v1;
    qword_140C203B0 = 0i64;
  }
}

Referenced by:

PopActiveLockScreenPowerRequest
PopAdaptivePowerSettingCallback
PopIsLockConsoleTimeoutActive
PopSessionConnectionChange
PopSessionInputChange
PopSessionWinlogonNotification
PopSetDisplayStatus
PopUserPresentOverride