I thought I had worked round the crash by running it in Win95 compatibility mode, but it seems to be doing it again. There's a newer version of slmdec that hasn't been made public, I would really like to get hold of that.
Thanks for the lsdecode hint, I haven't looked inside it yet. I have just tried an experiment. I generated a license, changed the VendorID in the emulator and then generated an otherwise identical license. The licenses were identical, so it looks like the wlscgen is still stamped at installation time, and at that time only it gets the VID from the dongle.