What causes odd deformations when using Subsurf?
You have some issues with the topology:


Extra edges on the large inner-top face, creating n-gons (also see this question):



To fix them, select them and press Delete > Edges.
Extra vertices on the edges, also creating n-gons:



To fix them, select them and press Delete > Dissolve vertices.
Internal edges on each corner:

 

To fix them, select them and press Delete > Edges.
Double vertices one of the corners:



To fix them, either merge them manually, or select everything (or just the area you want to check for doubles, but in this case it doesn't really matter) and press W > Remove Doubles.
No face on the top loop, creating non-manifold topology:

It's a bit hard to see, but if you select it with AltRMB and translate it, it's a bit more obvious:



You can select non-manifold geometry with CtrlAltShiftM.


Example .blend