If you throw some more code out there I can take a look. I've got some experience hunting nasty bugs involving Windows, memory structures and the likes: Cautomaton exposed me to tons of weirdness from MS and other application 'vendors' when I wrote it.
Thanks, actually I'd already posted the code in its entirety earlier when I (had only tested it on x64) thought it was working. It's back aways in this thread here
the part that is throwing blanks at me is on line 46 of that code. I was then (incorrectly) assuming that the buffer passed to the function 3 posts up had content, which it didn't, which explains why incrementing the pointer to it went ...Badly.
Which makes my current nemesis the empty/corrupt/borked buffer on line 46.