You have an org at address h'00' then go on to put code there...not a great idea...
You are not saving the context of the processor either during interrupts which is just asking for trouble...
Start structuring your code using symbolic labels rather than addressing registers by their physical addresses. Things are made a lot easier for you if you use one of the include header files in Mplab.