Reverse Engineering has always been about finding the right place to start. There are two common options here:
Prevent activation checks
For activation purposes, its most likely the best way to search for references to a string related to activation. In this particular case, I would use a decent decompiler like BinaryNinja, IDA or radare2 to find references ...
As expected, the USB was indeed detected but due that Linux has no idea how to deal with it without a proper driver, it only parses its hardware related parameters (Vendor and Product IDs) and stops there.
Here are the USB device's entries in usb-devices and lsusb commands respectively:
T: Bus=01 Lev=02 Prnt=05 Port=00 Cnt=01 Dev#= 8 ...
For my knowledge , HASP has a USB pen with something inside and two different drivers running as a service to accept remote and local request of license verification... And the other one is something I do not recall .
Probably you could sniff protocol (port 1943 for example) .
Sorry but I had not access to the phisical USB pen
Probably you can also clone ...
First please not that the dongle may be used for cryptographic purposes, so there might be no point in trying to skip the check.
Second, winscard.dll can not be called. Try to set a breakpoint on common methods like SCardEstablishContext and SCardListReaders to find the right check.
For example, if no SmartCard is connected to the system at all, ...