I'm pretty sure you're expecting it to work as a SEVENTEEN bit converter.
One problem here is that neither the Reference Manual or Data Sheet give clear definitions of the conversion ranges. You're sort of "just meant to know how this works". Or you're meant to reverse-engineer it. I have to do that a lot.
The basic question is "what is full scale?". When in single-ended mode, the single ADC input going from 0V to 3.3V should give a converted value of 0 to 65535, so there are 2^16 levels between 0V and 3.3V, with each step being 3.3/2^16.
The full scale when in differential mode goes from the differential inputs connected to 0V and 3.3V to them being swapped, connecting to 3.3V and 0V. So the full scale range is from -3.3V to +3.3V, or a full scale range 6.6V and so I'm pretty sure there are 2^16 levels with each step being 6.6/2^16.
You've got ADC_DM0 tied to the middle so your signal is only going from -1.65V to +1.65V. So the proper conversion for a voltage swing of half the range is -16384 to 16383. To get +-32k with that input voltage swing you'd have to have a 17 bit converter.
Or to put it another way, if you left everything else alone and connected ADC_DM0 to ground your sine wave would be converted to 0 to 32767. If you connected ADC_DM0 to 3.3V you'd get -32768 to 0. If it was magically giving you +-32k with your setup as you seem to expect it would have to be able to measure +-64k.
Tom