I've never worked in outsourcing and almost every job I had in my >15 years career as a developer included at least somewhat-gnarly & often truly-gnarly code.
It is very rare to see a codebase several years old that can be fairly describe as "in good shape".