In my experience it's more likely the former than the latter, but even if I'm wrong I personally feel that it's healthier to judge awful legacy code as generously as possible so that we don't, in our disgust, disregard whatever good stuff might be hidden in there. Without having read further yet I'm already confident we're on the same page :)