TtmpActivateSessionWorker

NTSTATUS __stdcall TtmpActivateSessionWorker(_TTMI_SESSION *LockedSession){
  _TTMI_SESSION v1; 
  NTSTATUS v3; 
  unsigned int v4; 
  POWER_MONITOR_REQUEST_REASON v5; 

  v1 = LockedSession[1];
  if( (v1 & 8) == 0 )
  {
    if( (v1 & 0x40) != 0 )
      return 259;
    if( (v1 & 0x200) != 0 )
    {
      if( (v1 & 0x100) != 0 )
        return 259;
      v4 = LockedSession[3];
      LockedSession[1] = v1 | 0x100;
      v3 = TtmpInitiateModernStandbyTransition((__int64)LockedSession, 0, v4);
      if( v3 )
        return v3;
      LockedSession[1] &= 0xFFFFFCFF;
      v1 = LockedSession[1];
      if( (v1 & 0x10) == 0 )
        return 0;
    }
    if( (v1 & 0x400) == 0 )
    {
      v3 = 0;
      LockedSession[1] = v1 & 0xFFFFFFE7 | 8;
      TtmiLogSessionActivate();
      return v3;
    }
    if( (v1 & 0x80u) == 0 )
    {
      v5 = LockedSession[3];
      LockedSession[1] = v1 | 0x80;
      TtmpSessionPowerControl(LockedSession, 1u, v5);
    }
    return 259;
  }
  LockedSession[1] = v1 & 0xFFFFFFEF;
  return 0;
}

Referenced by:

TtmpSessionWorker