Surprise! It's the Internal Revenue Code. According to this article in the Wall Street Journal, it seems like about half the more than $2 trillion dollars in cash sitting in corporations is from overseas profits, and would be subject to US tax if it were brought back to the US. A survery of S&P 500 companies estimates 30% had invested in low return foreign assets rather than pay the US tax, and 56% including Microsoft borrowed in the US rather than pay the US tax hit. Another 6% claim they had decllined to invest in US projects to avoid paying US taxes on repatriated cash balances.
But the article conveniently fails to mention another possibility. During previous downturns, Congress has offered (or at least considered) "amnesty" for repatriated earnings, reducing the US tax to as little as 5% if the repatriated funds are invested in US operations. There is evidence that this just doesn't happen, if for no other reason than that if half the cash hoard is overseas, then half is in the US.
So these companies may just be waiting out Congress for another amnesty program. If that's the case, maybe its time to rethink how we tax overseas earnings and just make the 5% rate permanent?