TtmiEvacuateDevices

UINT8 __stdcall TtmiEvacuateDevices(_TTMI_SESSION *LockedSession, _TTMI_TERMINAL *Terminal){
  _TTMI_SESSION *v2; 
  _TERMINAL_DEVICE_PROVIDER *v4; 
  UINT8 result; 
  UINT64 v6; 

  v2 = LockedSession + 24;
  v4 = (_TERMINAL_DEVICE_PROVIDER *)*((_QWORD *)LockedSession + 12);
  result = 0;
  while( v4 != (_TERMINAL_DEVICE_PROVIDER *)v2 )
  {
    v6 = (unsigned int)Terminal[7];
    if( *((_DWORD *)v4 + 149) == (_DWORD)v6 )
    {
      TtmiLogDeviceFromTerminalRemoved(v6, v4[4], *((_QWORD *)v4 + 3), *((unsigned int *)v4 + 8));
      *((_DWORD *)v4 + 149) = -1;
      result = 1;
      *((_DWORD *)v4 + 150) |= 0x10u;
    }
    v4 = *(_TERMINAL_DEVICE_PROVIDER **)v4;
  }
  return result;
}

Referenced by:

TtmiSessionTerminalListWorker
TtmpDispatchEvacuateDevices