There is no possible way anyone can help you to do that without looking at your code. I doubt anyone is going to do a huge job like that for free.
You have the device in front of you and even with the device it could be a difficult task depending on the complexity of the code.
As tshuck stated, you will need a pickit2 or 3 and mplab (just one piece of software you can use) to read the data if it is allowed. Some manufacturers will read protect their code making it impossible to read.
Cross-posting in this and other thread. One should be locked or merged.
Where did you get the schematic for the controller? You should be able to download or purchase the downloadable code from the same site.
The thing about microcontroller programming is that a schematic can essentially be used for many different tasks depending on the code running on the controller.
The code is the heart of the project, and if you don't have that, trying to guess it would result in something different. If you do know how to program C, try Sourceboost C, Mikro C, or Hi-Tech C and write code if you know the algorithm for the battery chemistry you are working with.
If you don't know how to program in C, you'll have a bit to learn before you can tackle a project of this scale. Usually start with blinking an LED (The "Hello World" of uC programming), then blinking an LED with a button input, and working up from there.