Part of your problem ....

you need TRISA.1 = 1 (RA1 = input) somewhere before doing your ADC.

Your ASM routines clear this bit, making it an output. Do you set it elsewhere before sampling?

Also, why the ASM? Everything you show is easy in PBP?

(side note - OPTION and TRIS are going away .. avoid them – see datasheet)