Software has zero intrinsic value. It doesn't generate a single cent (unless you've written a BitCoin miner, I guess).
Customers, on the other hand, can generate lots of value if they use your software. Customers and the potential for more customers are usually the reason small software firms get acquired for Rockefeller money by the Google's and IBM's of the world (the other reasons are usually acquiring patents or the talent of the development team itself.) The software itself is rarely the target.
Open-sourcing the software increases the odds of someone using their software, either because it's "free", or because having the code in hand keeps them out of trouble if the company were to fold. And even if they're using it for free, it increases the odds that they would be willing to use a paid version at a later date, which is valuable.
And companies pay for reliability, both for necessity and so they have someone to pass the blame to if something fails. Even if someone got a copy of their code and decided to try their own business, are you going to trust them over the original creators when it comes to your job security?