I've just started reading The Mikado Method byOla Ellnstam and Daniel Brolund. It's a book about a clever, safe way - i.e. a method - of cleaning up ugly old code.
Flipping through the book, it looks like it covers more modern languages than I and my colleagues are used to, but I'm hoping the method is applicable for unpicking older languages too.
You can read more here: http://mikadomethod.org/.
Or, you could watch and listen to a talk by my old GE colleague, Kev McCabe here: http://www.leanagilescotland.com/videos/bigmadkev. I haven't watched the video but friends said it was good.