IopGetSessionIdFromSymbolicName

UINT64 __stdcall IopGetSessionIdFromSymbolicName(UNICODE_STRING *SymbolicLinkName){
  unsigned int SessionIdFromPDO; 
  DEVICE_OBJECT *v2; 
  struct _DMA_ADAPTER *v3; 
  __int64 v4; 
  SessionIdFromPDO = -1;
  v2 = IopDeviceObjectFromSymbolicName(SymbolicLinkName);
  v3 = (struct _DMA_ADAPTER *)v2;
  if( v2 )
  {
    v4 = *(_QWORD *)(*((_QWORD *)v2 + 39) + 40i64);
    if( v4 )
    {
      if( (*(_DWORD *)(v4 + 396) & 0x20000) == 0 )
      {
        SessionIdFromPDO = IopGetSessionIdFromPDO(v2);
        HalPutDmaAdapter(v3);
      }
    }
  }
  return SessionIdFromPDO;
}

Referenced by:

IoRegisterPlugPlayNotification
PiUEventProcessBroadcastNotifications
PnpNotifyDeviceClassChange