The Hex-Rays Decompiler attempts to do this for analysis purposes (that is, the resulting code is intended to be human-readable, but not necessarily compiled): https://www.hex-rays.com/products/decompiler
Unfortunately, I've not sprung for a license, so I can't comment on its efficacy.