must be called just before MD5Transform will be used to produce a digest. The buf argument is the storage for the digest being produced on subsequent calls to the MD5Transform routine.
MD5Transform
is the core of the MD5 algorithm, this alters an existing MD5 hash kept in buf to reflect the addition of 64 characters of new data passed in block argument.