I hope this isn't a dead thread or at the very least that you Rikerz are still working, or considering working on this corruption program.
I understand (I think) how the different corruption options work:
ADD: You add a value to the corrupted Byte, Thus if you add 1 to the byte 01001010 You'll change the byte to represent the value 75 which would be 01001011
Shift Right: If you shift 10101010 right by 1. It would become 01010101
Replace. If you replace 0 with 1 in 10011001 it becomes 11111111. And if you replace 1 with 0 it becomes 00000000.
Now I may be off in my understanding, and if I am, forgive me. But assuming that I grasp the way these options allow corruption, would it be possible for an option of inversion. Where say 10011001 would become 01100110?
Just a thought.