You really should try and make it as easy as possible for others to help you. The forum thread titled How to use this forum - please read has many suggestions in that regard but here are just a few that come to mind.
It is impossible to determine anything about your setup or what you are trying to do by looking at your post. What kind of interface is your LCD module using? What library are you using? What are the modes supposed to change?
You are requiring us to download your code instead of including it within the body of your post. That is appropriate for very long programs but yours is not very long.
The code has an 'include' for a library that I have never heard of before. I did a search for it and found that it is for a shift register interface but I didn't find the library itself.
Since you are using a 16x4 display and are having trouble with characters at the beginning of line 3 there is the possibility that the library is somehow based on the regular Arduino library which does not correctly deal with the bottom two lines on those displays.
The best I can do at this point without wading through your almost totally un-commented code is suggest that you switch to the 'New Liquid Crystal' library by Francisco Malpartida.