CSI/UA does that. Free if you subscribe to their data service, $7 a month if not. http://www.csidata.com/ H
You can get the correlation between any 2 stocks or between a stock and everything else in their database, stocks and/or futures. For instance if you put in MSFT in the 12-yr timeframe, against stocks only, you get hundreds of stocks, starting with CA at 0.9089 and ending with AJG at -0.8548 H