It's not always possible, for example GoDaddy prevents transfers away from them without disabling the privacy protection first (docs):
You can't transfer your domain [...] if your domain has Ownership Protection.
There's also a "helpful" message about this when you turn it off:
Turning off privacy exposes your contact info to the public. Once it's out ...