TtmpDispatchSetDefaultDeviceAssignment

__int64 __fastcall TtmpDispatchSetDefaultDeviceAssignment(__int64 a1){
  NTSTATUS v2; 
  _TTMI_SESSION *v3; 
  unsigned int v4; 
  bool v5; 
  _TTMI_SESSION *v7; 
  PADAPTER_OBJECT DmaAdapter; 

  v7 = 0i64;
  DmaAdapter = 0i64;
  v2 = TtmpAcquireSessionFromTerminalHandle(*(VOID **)(a1 + 8), 1u, 0, &v7, (_TTMI_TERMINAL **)&DmaAdapter);
  v3 = v7;
  v4 = v2;
  if( v2 >= 0 )
  {
    v5 = *(_BYTE *)(a1 + 16) != 0;
    v7[1] = v7[1] & 0xFFFFF7FF | (v5 << 11);
    TtmiLogSessionDeviceAssignmentPolicySet(v5);
    v4 = 0;
  }
  else
  {
    TtmiLogError((INT8 *)"TtmpDispatchSetDefaultDeviceAssignment", 0x2C3ui64, (unsigned int)v2, (unsigned int)v2);
  }
  if( v3 )
  {
    ExReleaseResourceLite(&TtmpSessionLock);
    KeLeaveCriticalRegion();
  }
  if( DmaAdapter )
    HalPutDmaAdapter(DmaAdapter);
  return v4;
}

Referenced by:

TtmDispatchApi