I haven't tried this, but if you have the map file, you could use map2pdb and then use windbg to figure out where the exception occurred.
As @David Heffernan mentioned, madEcept or Eurekalog are the way to go - they are invaluable for getting usable stack traces, I've fixed countless bugs in my code thanks to madExcept.