So I made a patching program and a program to rebuild stuff. You can try it out if you want... http://www.illimited.net/mpatch.zip I'll post the code if there's any interest. It's a little messy though (like most my code) The funny thing about making this was the results as I tried to make it faster. I got the functionality working and I started to improve it. I put in one thing that I thought would make it several times faster. Turns out that improvement made it slower....but.... it did a better job. I expected the results to be opposite. I had no idea how it was making it slower since the improvement removed several comparisons, all by making one comparison (the same kind it reduced). But the mind boggler was how it was making the thing patch better. So I rewrote a lot of it, thinking my new improvements would make it so much faster. Not really, a little bit. So then I just made levels of patching because the default way takes forever on big files (time gets exponentially larger the larger the file). Anyway, crazy stuff. If my boredom continues I'm going to make an entire offsite backup program. We'll see.