You don't seem to address the "pragmatic reasons" expressly, so I'll go ahead and do it:
1. "Don't rewrite code" a fundamental precept of software that has been "engineered"
- This is more about development lifecycles than something that contributes usefully to software quality in the long term. Corporations, and people haven't been treating these things like bridges or overpasses
2. Outsourcing is believed cheaper than the solution.
- Again, paying low-wage junior SEs to patch uncovered bugs is obviously cheaper than proactively finding them all.
3. You can sell the New Coke too!
- If you have a good rewrite, sell it at a fat markup, and keep selling the old crap too, it's not your risk.
- Obviously don't rewrite unless your horrid monolithic source leaks, and you're certain that it's a problem, those disgruntled workers you wrongfully laid off know too much.
4. If your tech references are a security risk, sell those too!
- Don't include pesky manuals where people can uncover issues with your development processes, outsource a minimum blackbox of guess work to Singapore and let that double as QA.
- It's not a manual, it's 'training' -- supporting education of hopeful workers! Wow!
I won't name any names.