Bene, studiare l'assembly per scopi didattici è un "male necessario" e un vantaggio per il futuro.
E' come chi ha studiato latino e poi studia il tedesco...ha la vita più facile.
Nel tuo caso metterei dei breakpoint nei punti di interesse.
Quando l'esecuzione arriva li esegui il programma passo passo.
Nella finestra Watch aggiungi le variabili di tuo interesse o gli SFR.
In questo modo puoi monitorare il tutto passo passo e vedere se i tuoi sospetti sono fondati.
Per la sezione di Debug puoi vedere il libro che ho scritto.
Fa riferimento al C ma si applica anche al tuo caso.
XC8 Step by Step
Saluti,
Mauro