I've been working on a project for the last year or so (on and off) refactoring code and shifting it from Classic ASP to C#/.NET.
I'll say the one thing that would really help would be unit tests on the old code. It's rough transitioning some dirty logic that seems to work from one end to the other and not having a simple test to know I didn't break everything upon refactoring.
I have the book "Working Effectively with Legacy Code"[0], and it's pretty much just "Put things under test, then change them.". Still a useful read, though, if you find yourself working in that sort of thing often (I do).
I'll say the one thing that would really help would be unit tests on the old code. It's rough transitioning some dirty logic that seems to work from one end to the other and not having a simple test to know I didn't break everything upon refactoring.