Among other tweaks, the existing freeware md5 implementations I've seen typically have at least one unnecessary copy which can be avoided when you know something about the processor you're targeting. I don't have numbers handy from when I tuned it at a previous job, but just eliminating that copy made a significant difference. - Bill