XUMF5AU ;ISS/PAVEL - XUMF5 MD5 Hash API ;06/17/05
Source file <XUMF5AU.m>
| Name | Comments | DBIA/ICR reference | 
|---|---|---|
| MD5R(STR) | ; Construct a 128-bit MD5 hash of the input.
 | 
|
| PAD1R | ||
| PAD2R | ||
| PROCESSR | ; Main processing and transformation loop
 | 
|
| INITR | ||
| MD5E(ABCD,STR,PP,LL) | ; Construct a 128-bit MD5 hash of the input.
 | 
|
| PAD1E | ||
| PAD2E | ||
| PROCESSE | ; Main processing and transformation loop
 | 
|
| INITE(LASTABCD) | ||
| SAVE | ; Save buffers
 | 
|
| ROUND1 | ; First round of transformation
 | 
|
| ROUND2 | ; Second round of transformation
 | 
|
| ROUND3 | ; Third round of transformation
 | 
|
| ROUND4 | ; Fourth round of transformation
 | 
|
| INCR | ;
 | 
|
| SUB(A,B,C,D,X,S,AC,FN) | ; FN is 1 (F), 2 (G), 3 (H) or 4 (I)
 | 
|
| COMB | ; Choose F, G, H or I
 | 
|
| COMB1 | ||
| COMB2 | ||
| COMB3 | ||
| COMB4 | ||
| AND(X,Y) | ;
 | 
|
| OR(X,Y) | ;
 | 
|
| XOR(X,Y) | ;
 | 
|
| NOT(X) | ;
 | 
|
| ADD(X,Y) | ; modulo 2**32
 | 
|
| ADDIW(M,Y) | ; modulo 2**32
 | 
|
| ADDII(M,N) | ; modulo 2**32
 | 
|
| ROTL(X,S) | ; rotate left by s bits
 | 
|
| ROTLI(N,S) | ; rotate left by s bits
 | 
|
| UI64BIT(N) | ; Convert unsigned integer to 64-bit form, little endian
 ; code from CORBA ULONGLONG marshaling  | 
|
| UI32BIT(N) | ; Convert unsigned integer to 32-bit form, little endian
 ; code from CORBA ULONG marshaling  | 
|
| UINT32(STR) | ; Get integer value from bits of 4-character string
 ; code from CORBA ULONG unmarshaling  | 
|
| HEX(STR) | ; Printable hex representation of characters in string
 | 
|
| CHR2OCT(STR) | ; convert hex string to decimal byte values
 | 
|
| CHAR1(DIGIT) | ; convert one char to its hex value
 |