2) Just because the code is awful doesn't mean it has no value -- No matter how bad it is and how difficult it is to read, if it works at all it has probably got years (maybe even decades) of bug fixes and feature requests. Until you have a handle on it, any little change could cause a catastrophic cascade of side-effects.
3) No, we don't need to rewrite it. See 2. A working program now is worth more than all the pie in the sky you can promise a year from now.
So very true--take note all you young programmers out there. Especially those of you who are suggesting to dive right in and begin refactoring code immediately. I shudder to think of the damage you can do by "refactoring" code which you've just started investigating and which you don't yet understand.