Note: I haven't even looked at this project for years. I was a pretty bad programmer back then, so the code is sloppy. The next version will be better.
Similar to a stream cipher, but rather than performing an exclusive OR on the input bytes and cipher, it performs a mixture of 'rolling' (see x86 instruction ROR) and bit NOT operations according to the key.