You'll have to go through the database and re-link the posts to the names manually. .... at least that's the only way I'm aware of.
I've done this before, using SQLyog. Get it at
http://esd.element5.com/affiliate.ht...www.webyog.com if you don't have it already. Using myPhpAdmin is ridiculous, useless crap compared to SQLyog.
This isn't as hard as you may think -- I sorted the posts by IP address in the db table, and was able to cross-reference the IPs to most members. In your case, it might be even easier than that, as the username appears to still be intact. You'll just add the correct user ID into the table, instead of the default ID given to a guest (or lack of ID, I forget now -- been a few years since I had to do this).
The forum was rather small at the time, which I think yours is too, so it's not too awful. It took me maybe 30 minutes for several dozen users, a few hundred threads (few thousand posts).
Mine was due to an import of a damaged phpBB board.
Some of the most damaged threads were dumped, and some orphaned posts were thrown into a "random" thread (later deleted, I believe).
vBulletin.com support won't help you much, I bet. There may be better help over at vBulletin.org for something like this. vB.com tends to say "read the book" while vB.org is willing to talk about mods/plugins/etc.
By the time you read all kinds of stuff at vB.com/vB.org however, you could probably have just done the manual method in the same amount of time.
The bigger issue here is you don't have a good backup (or backup method). Look into that. I use SQLyog for backups. (Also have server cloning to intranet-only system at the datacenter, firewalled from web access.)