Note that MPLAB does *NOT* give any sort of warning or error message when you read a code protected PIC MCU. The read-back program memory from a protected PIC is blank (0x0000 NOP filled). Most commercial products that aren't open source use code protection. Unless you have *either* checked that you have valid program memory contents and that the CONFIG word(s) don't have any code protection bits enabled, *or* confirmed that you can program a factory fresh PIC and that it runs in your application, this whole exercise is a futile waste of your time and effort.