well, if you think dongle cracking has anything except direct relation to software reversing, I can come with some ideas

but it would be nice to have some snippets of the code you have. basically you only have to record queries and store them in a table, do this twice by executing the program and compare the tables.
if the tables match with no or slight difference you grabbed the d**k of God