ad7689 output code differes with vref
As described in my comment, sorry for the typo : 
$$N_{counts}=\frac{V_{x}}{V_{ref}}(2^{N_{adc}}-1)$$
where $$N_{counts}$$ means result from ADC, $$V_{x}$$ is measured voltage and $$N_{adc}$$ are ADC bits resolution (12-bit, 10-bit,etc). The adc compares unknown voltage with reference voltage and encodes the number rapresenting the voltage, therefore it is normal if you change V_ref to get different result.
For example your ADC is 16-bit therefore 2^N-1=65535:
$$\frac{1.2129}{4.096}*65535 = 19406.1 ,rounding=19406= 4BCE_{HEX} $$