|  | ; Don't even think of reading this code | 
|  | ; It was automatically generated by md5-586.pl | 
|  | ; Which is a perl program used to generate the x86 assember for | 
|  | ; any of elf, a.out, BSDI,Win32, or Solaris | 
|  | ; eric <eay@cryptsoft.com> | 
|  | ; | 
|  | TITLE	md5-586.asm | 
|  | .386 | 
|  | .model FLAT | 
|  | _TEXT	SEGMENT | 
|  | PUBLIC	_md5_block_x86 | 
|  |  | 
|  | _md5_block_x86 PROC NEAR | 
|  | push	esi | 
|  | push	edi | 
|  | mov	edi,		DWORD PTR 12[esp] | 
|  | mov	esi,		DWORD PTR 16[esp] | 
|  | mov	ecx,		DWORD PTR 20[esp] | 
|  | push	ebp | 
|  | push	ebx | 
|  | add	ecx,		esi | 
|  | sub	ecx,		64 | 
|  | mov	eax,		DWORD PTR [edi] | 
|  | push	ecx | 
|  | mov	ebx,		DWORD PTR 4[edi] | 
|  | mov	ecx,		DWORD PTR 8[edi] | 
|  | mov	edx,		DWORD PTR 12[edi] | 
|  | L000start: | 
|  | ; | 
|  | ; R0 section | 
|  | mov	edi,		ecx | 
|  | mov	ebp,		DWORD PTR [esi] | 
|  | ; R0 0 | 
|  | xor	edi,		edx | 
|  | and	edi,		ebx | 
|  | lea	eax,		DWORD PTR 3614090360[ebp*1+eax] | 
|  | mov	ebp,		DWORD PTR 4[esi] | 
|  | xor	edi,		edx | 
|  | add	eax,		edi | 
|  | mov	edi,		ebx | 
|  | rol	eax,		7 | 
|  | add	eax,		ebx | 
|  | ; R0 1 | 
|  | xor	edi,		ecx | 
|  | and	edi,		eax | 
|  | lea	edx,		DWORD PTR 3905402710[ebp*1+edx] | 
|  | mov	ebp,		DWORD PTR 8[esi] | 
|  | xor	edi,		ecx | 
|  | add	edx,		edi | 
|  | mov	edi,		eax | 
|  | rol	edx,		12 | 
|  | add	edx,		eax | 
|  | ; R0 2 | 
|  | xor	edi,		ebx | 
|  | and	edi,		edx | 
|  | lea	ecx,		DWORD PTR 606105819[ebp*1+ecx] | 
|  | mov	ebp,		DWORD PTR 12[esi] | 
|  | xor	edi,		ebx | 
|  | add	ecx,		edi | 
|  | mov	edi,		edx | 
|  | rol	ecx,		17 | 
|  | add	ecx,		edx | 
|  | ; R0 3 | 
|  | xor	edi,		eax | 
|  | and	edi,		ecx | 
|  | lea	ebx,		DWORD PTR 3250441966[ebp*1+ebx] | 
|  | mov	ebp,		DWORD PTR 16[esi] | 
|  | xor	edi,		eax | 
|  | add	ebx,		edi | 
|  | mov	edi,		ecx | 
|  | rol	ebx,		22 | 
|  | add	ebx,		ecx | 
|  | ; R0 4 | 
|  | xor	edi,		edx | 
|  | and	edi,		ebx | 
|  | lea	eax,		DWORD PTR 4118548399[ebp*1+eax] | 
|  | mov	ebp,		DWORD PTR 20[esi] | 
|  | xor	edi,		edx | 
|  | add	eax,		edi | 
|  | mov	edi,		ebx | 
|  | rol	eax,		7 | 
|  | add	eax,		ebx | 
|  | ; R0 5 | 
|  | xor	edi,		ecx | 
|  | and	edi,		eax | 
|  | lea	edx,		DWORD PTR 1200080426[ebp*1+edx] | 
|  | mov	ebp,		DWORD PTR 24[esi] | 
|  | xor	edi,		ecx | 
|  | add	edx,		edi | 
|  | mov	edi,		eax | 
|  | rol	edx,		12 | 
|  | add	edx,		eax | 
|  | ; R0 6 | 
|  | xor	edi,		ebx | 
|  | and	edi,		edx | 
|  | lea	ecx,		DWORD PTR 2821735955[ebp*1+ecx] | 
|  | mov	ebp,		DWORD PTR 28[esi] | 
|  | xor	edi,		ebx | 
|  | add	ecx,		edi | 
|  | mov	edi,		edx | 
|  | rol	ecx,		17 | 
|  | add	ecx,		edx | 
|  | ; R0 7 | 
|  | xor	edi,		eax | 
|  | and	edi,		ecx | 
|  | lea	ebx,		DWORD PTR 4249261313[ebp*1+ebx] | 
|  | mov	ebp,		DWORD PTR 32[esi] | 
|  | xor	edi,		eax | 
|  | add	ebx,		edi | 
|  | mov	edi,		ecx | 
|  | rol	ebx,		22 | 
|  | add	ebx,		ecx | 
|  | ; R0 8 | 
|  | xor	edi,		edx | 
|  | and	edi,		ebx | 
|  | lea	eax,		DWORD PTR 1770035416[ebp*1+eax] | 
|  | mov	ebp,		DWORD PTR 36[esi] | 
|  | xor	edi,		edx | 
|  | add	eax,		edi | 
|  | mov	edi,		ebx | 
|  | rol	eax,		7 | 
|  | add	eax,		ebx | 
|  | ; R0 9 | 
|  | xor	edi,		ecx | 
|  | and	edi,		eax | 
|  | lea	edx,		DWORD PTR 2336552879[ebp*1+edx] | 
|  | mov	ebp,		DWORD PTR 40[esi] | 
|  | xor	edi,		ecx | 
|  | add	edx,		edi | 
|  | mov	edi,		eax | 
|  | rol	edx,		12 | 
|  | add	edx,		eax | 
|  | ; R0 10 | 
|  | xor	edi,		ebx | 
|  | and	edi,		edx | 
|  | lea	ecx,		DWORD PTR 4294925233[ebp*1+ecx] | 
|  | mov	ebp,		DWORD PTR 44[esi] | 
|  | xor	edi,		ebx | 
|  | add	ecx,		edi | 
|  | mov	edi,		edx | 
|  | rol	ecx,		17 | 
|  | add	ecx,		edx | 
|  | ; R0 11 | 
|  | xor	edi,		eax | 
|  | and	edi,		ecx | 
|  | lea	ebx,		DWORD PTR 2304563134[ebp*1+ebx] | 
|  | mov	ebp,		DWORD PTR 48[esi] | 
|  | xor	edi,		eax | 
|  | add	ebx,		edi | 
|  | mov	edi,		ecx | 
|  | rol	ebx,		22 | 
|  | add	ebx,		ecx | 
|  | ; R0 12 | 
|  | xor	edi,		edx | 
|  | and	edi,		ebx | 
|  | lea	eax,		DWORD PTR 1804603682[ebp*1+eax] | 
|  | mov	ebp,		DWORD PTR 52[esi] | 
|  | xor	edi,		edx | 
|  | add	eax,		edi | 
|  | mov	edi,		ebx | 
|  | rol	eax,		7 | 
|  | add	eax,		ebx | 
|  | ; R0 13 | 
|  | xor	edi,		ecx | 
|  | and	edi,		eax | 
|  | lea	edx,		DWORD PTR 4254626195[ebp*1+edx] | 
|  | mov	ebp,		DWORD PTR 56[esi] | 
|  | xor	edi,		ecx | 
|  | add	edx,		edi | 
|  | mov	edi,		eax | 
|  | rol	edx,		12 | 
|  | add	edx,		eax | 
|  | ; R0 14 | 
|  | xor	edi,		ebx | 
|  | and	edi,		edx | 
|  | lea	ecx,		DWORD PTR 2792965006[ebp*1+ecx] | 
|  | mov	ebp,		DWORD PTR 60[esi] | 
|  | xor	edi,		ebx | 
|  | add	ecx,		edi | 
|  | mov	edi,		edx | 
|  | rol	ecx,		17 | 
|  | add	ecx,		edx | 
|  | ; R0 15 | 
|  | xor	edi,		eax | 
|  | and	edi,		ecx | 
|  | lea	ebx,		DWORD PTR 1236535329[ebp*1+ebx] | 
|  | mov	ebp,		DWORD PTR 4[esi] | 
|  | xor	edi,		eax | 
|  | add	ebx,		edi | 
|  | mov	edi,		ecx | 
|  | rol	ebx,		22 | 
|  | add	ebx,		ecx | 
|  | ; | 
|  | ; R1 section | 
|  | ; R1 16 | 
|  | lea	eax,		DWORD PTR 4129170786[ebp*1+eax] | 
|  | xor	edi,		ebx | 
|  | and	edi,		edx | 
|  | mov	ebp,		DWORD PTR 24[esi] | 
|  | xor	edi,		ecx | 
|  | add	eax,		edi | 
|  | mov	edi,		ebx | 
|  | rol	eax,		5 | 
|  | add	eax,		ebx | 
|  | ; R1 17 | 
|  | lea	edx,		DWORD PTR 3225465664[ebp*1+edx] | 
|  | xor	edi,		eax | 
|  | and	edi,		ecx | 
|  | mov	ebp,		DWORD PTR 44[esi] | 
|  | xor	edi,		ebx | 
|  | add	edx,		edi | 
|  | mov	edi,		eax | 
|  | rol	edx,		9 | 
|  | add	edx,		eax | 
|  | ; R1 18 | 
|  | lea	ecx,		DWORD PTR 643717713[ebp*1+ecx] | 
|  | xor	edi,		edx | 
|  | and	edi,		ebx | 
|  | mov	ebp,		DWORD PTR [esi] | 
|  | xor	edi,		eax | 
|  | add	ecx,		edi | 
|  | mov	edi,		edx | 
|  | rol	ecx,		14 | 
|  | add	ecx,		edx | 
|  | ; R1 19 | 
|  | lea	ebx,		DWORD PTR 3921069994[ebp*1+ebx] | 
|  | xor	edi,		ecx | 
|  | and	edi,		eax | 
|  | mov	ebp,		DWORD PTR 20[esi] | 
|  | xor	edi,		edx | 
|  | add	ebx,		edi | 
|  | mov	edi,		ecx | 
|  | rol	ebx,		20 | 
|  | add	ebx,		ecx | 
|  | ; R1 20 | 
|  | lea	eax,		DWORD PTR 3593408605[ebp*1+eax] | 
|  | xor	edi,		ebx | 
|  | and	edi,		edx | 
|  | mov	ebp,		DWORD PTR 40[esi] | 
|  | xor	edi,		ecx | 
|  | add	eax,		edi | 
|  | mov	edi,		ebx | 
|  | rol	eax,		5 | 
|  | add	eax,		ebx | 
|  | ; R1 21 | 
|  | lea	edx,		DWORD PTR 38016083[ebp*1+edx] | 
|  | xor	edi,		eax | 
|  | and	edi,		ecx | 
|  | mov	ebp,		DWORD PTR 60[esi] | 
|  | xor	edi,		ebx | 
|  | add	edx,		edi | 
|  | mov	edi,		eax | 
|  | rol	edx,		9 | 
|  | add	edx,		eax | 
|  | ; R1 22 | 
|  | lea	ecx,		DWORD PTR 3634488961[ebp*1+ecx] | 
|  | xor	edi,		edx | 
|  | and	edi,		ebx | 
|  | mov	ebp,		DWORD PTR 16[esi] | 
|  | xor	edi,		eax | 
|  | add	ecx,		edi | 
|  | mov	edi,		edx | 
|  | rol	ecx,		14 | 
|  | add	ecx,		edx | 
|  | ; R1 23 | 
|  | lea	ebx,		DWORD PTR 3889429448[ebp*1+ebx] | 
|  | xor	edi,		ecx | 
|  | and	edi,		eax | 
|  | mov	ebp,		DWORD PTR 36[esi] | 
|  | xor	edi,		edx | 
|  | add	ebx,		edi | 
|  | mov	edi,		ecx | 
|  | rol	ebx,		20 | 
|  | add	ebx,		ecx | 
|  | ; R1 24 | 
|  | lea	eax,		DWORD PTR 568446438[ebp*1+eax] | 
|  | xor	edi,		ebx | 
|  | and	edi,		edx | 
|  | mov	ebp,		DWORD PTR 56[esi] | 
|  | xor	edi,		ecx | 
|  | add	eax,		edi | 
|  | mov	edi,		ebx | 
|  | rol	eax,		5 | 
|  | add	eax,		ebx | 
|  | ; R1 25 | 
|  | lea	edx,		DWORD PTR 3275163606[ebp*1+edx] | 
|  | xor	edi,		eax | 
|  | and	edi,		ecx | 
|  | mov	ebp,		DWORD PTR 12[esi] | 
|  | xor	edi,		ebx | 
|  | add	edx,		edi | 
|  | mov	edi,		eax | 
|  | rol	edx,		9 | 
|  | add	edx,		eax | 
|  | ; R1 26 | 
|  | lea	ecx,		DWORD PTR 4107603335[ebp*1+ecx] | 
|  | xor	edi,		edx | 
|  | and	edi,		ebx | 
|  | mov	ebp,		DWORD PTR 32[esi] | 
|  | xor	edi,		eax | 
|  | add	ecx,		edi | 
|  | mov	edi,		edx | 
|  | rol	ecx,		14 | 
|  | add	ecx,		edx | 
|  | ; R1 27 | 
|  | lea	ebx,		DWORD PTR 1163531501[ebp*1+ebx] | 
|  | xor	edi,		ecx | 
|  | and	edi,		eax | 
|  | mov	ebp,		DWORD PTR 52[esi] | 
|  | xor	edi,		edx | 
|  | add	ebx,		edi | 
|  | mov	edi,		ecx | 
|  | rol	ebx,		20 | 
|  | add	ebx,		ecx | 
|  | ; R1 28 | 
|  | lea	eax,		DWORD PTR 2850285829[ebp*1+eax] | 
|  | xor	edi,		ebx | 
|  | and	edi,		edx | 
|  | mov	ebp,		DWORD PTR 8[esi] | 
|  | xor	edi,		ecx | 
|  | add	eax,		edi | 
|  | mov	edi,		ebx | 
|  | rol	eax,		5 | 
|  | add	eax,		ebx | 
|  | ; R1 29 | 
|  | lea	edx,		DWORD PTR 4243563512[ebp*1+edx] | 
|  | xor	edi,		eax | 
|  | and	edi,		ecx | 
|  | mov	ebp,		DWORD PTR 28[esi] | 
|  | xor	edi,		ebx | 
|  | add	edx,		edi | 
|  | mov	edi,		eax | 
|  | rol	edx,		9 | 
|  | add	edx,		eax | 
|  | ; R1 30 | 
|  | lea	ecx,		DWORD PTR 1735328473[ebp*1+ecx] | 
|  | xor	edi,		edx | 
|  | and	edi,		ebx | 
|  | mov	ebp,		DWORD PTR 48[esi] | 
|  | xor	edi,		eax | 
|  | add	ecx,		edi | 
|  | mov	edi,		edx | 
|  | rol	ecx,		14 | 
|  | add	ecx,		edx | 
|  | ; R1 31 | 
|  | lea	ebx,		DWORD PTR 2368359562[ebp*1+ebx] | 
|  | xor	edi,		ecx | 
|  | and	edi,		eax | 
|  | mov	ebp,		DWORD PTR 20[esi] | 
|  | xor	edi,		edx | 
|  | add	ebx,		edi | 
|  | mov	edi,		ecx | 
|  | rol	ebx,		20 | 
|  | add	ebx,		ecx | 
|  | ; | 
|  | ; R2 section | 
|  | ; R2 32 | 
|  | xor	edi,		edx | 
|  | xor	edi,		ebx | 
|  | lea	eax,		DWORD PTR 4294588738[ebp*1+eax] | 
|  | add	eax,		edi | 
|  | mov	ebp,		DWORD PTR 32[esi] | 
|  | rol	eax,		4 | 
|  | mov	edi,		ebx | 
|  | ; R2 33 | 
|  | lea	edx,		DWORD PTR 2272392833[ebp*1+edx] | 
|  | add	eax,		ebx | 
|  | xor	edi,		ecx | 
|  | xor	edi,		eax | 
|  | mov	ebp,		DWORD PTR 44[esi] | 
|  | add	edx,		edi | 
|  | mov	edi,		eax | 
|  | rol	edx,		11 | 
|  | add	edx,		eax | 
|  | ; R2 34 | 
|  | xor	edi,		ebx | 
|  | xor	edi,		edx | 
|  | lea	ecx,		DWORD PTR 1839030562[ebp*1+ecx] | 
|  | add	ecx,		edi | 
|  | mov	ebp,		DWORD PTR 56[esi] | 
|  | rol	ecx,		16 | 
|  | mov	edi,		edx | 
|  | ; R2 35 | 
|  | lea	ebx,		DWORD PTR 4259657740[ebp*1+ebx] | 
|  | add	ecx,		edx | 
|  | xor	edi,		eax | 
|  | xor	edi,		ecx | 
|  | mov	ebp,		DWORD PTR 4[esi] | 
|  | add	ebx,		edi | 
|  | mov	edi,		ecx | 
|  | rol	ebx,		23 | 
|  | add	ebx,		ecx | 
|  | ; R2 36 | 
|  | xor	edi,		edx | 
|  | xor	edi,		ebx | 
|  | lea	eax,		DWORD PTR 2763975236[ebp*1+eax] | 
|  | add	eax,		edi | 
|  | mov	ebp,		DWORD PTR 16[esi] | 
|  | rol	eax,		4 | 
|  | mov	edi,		ebx | 
|  | ; R2 37 | 
|  | lea	edx,		DWORD PTR 1272893353[ebp*1+edx] | 
|  | add	eax,		ebx | 
|  | xor	edi,		ecx | 
|  | xor	edi,		eax | 
|  | mov	ebp,		DWORD PTR 28[esi] | 
|  | add	edx,		edi | 
|  | mov	edi,		eax | 
|  | rol	edx,		11 | 
|  | add	edx,		eax | 
|  | ; R2 38 | 
|  | xor	edi,		ebx | 
|  | xor	edi,		edx | 
|  | lea	ecx,		DWORD PTR 4139469664[ebp*1+ecx] | 
|  | add	ecx,		edi | 
|  | mov	ebp,		DWORD PTR 40[esi] | 
|  | rol	ecx,		16 | 
|  | mov	edi,		edx | 
|  | ; R2 39 | 
|  | lea	ebx,		DWORD PTR 3200236656[ebp*1+ebx] | 
|  | add	ecx,		edx | 
|  | xor	edi,		eax | 
|  | xor	edi,		ecx | 
|  | mov	ebp,		DWORD PTR 52[esi] | 
|  | add	ebx,		edi | 
|  | mov	edi,		ecx | 
|  | rol	ebx,		23 | 
|  | add	ebx,		ecx | 
|  | ; R2 40 | 
|  | xor	edi,		edx | 
|  | xor	edi,		ebx | 
|  | lea	eax,		DWORD PTR 681279174[ebp*1+eax] | 
|  | add	eax,		edi | 
|  | mov	ebp,		DWORD PTR [esi] | 
|  | rol	eax,		4 | 
|  | mov	edi,		ebx | 
|  | ; R2 41 | 
|  | lea	edx,		DWORD PTR 3936430074[ebp*1+edx] | 
|  | add	eax,		ebx | 
|  | xor	edi,		ecx | 
|  | xor	edi,		eax | 
|  | mov	ebp,		DWORD PTR 12[esi] | 
|  | add	edx,		edi | 
|  | mov	edi,		eax | 
|  | rol	edx,		11 | 
|  | add	edx,		eax | 
|  | ; R2 42 | 
|  | xor	edi,		ebx | 
|  | xor	edi,		edx | 
|  | lea	ecx,		DWORD PTR 3572445317[ebp*1+ecx] | 
|  | add	ecx,		edi | 
|  | mov	ebp,		DWORD PTR 24[esi] | 
|  | rol	ecx,		16 | 
|  | mov	edi,		edx | 
|  | ; R2 43 | 
|  | lea	ebx,		DWORD PTR 76029189[ebp*1+ebx] | 
|  | add	ecx,		edx | 
|  | xor	edi,		eax | 
|  | xor	edi,		ecx | 
|  | mov	ebp,		DWORD PTR 36[esi] | 
|  | add	ebx,		edi | 
|  | mov	edi,		ecx | 
|  | rol	ebx,		23 | 
|  | add	ebx,		ecx | 
|  | ; R2 44 | 
|  | xor	edi,		edx | 
|  | xor	edi,		ebx | 
|  | lea	eax,		DWORD PTR 3654602809[ebp*1+eax] | 
|  | add	eax,		edi | 
|  | mov	ebp,		DWORD PTR 48[esi] | 
|  | rol	eax,		4 | 
|  | mov	edi,		ebx | 
|  | ; R2 45 | 
|  | lea	edx,		DWORD PTR 3873151461[ebp*1+edx] | 
|  | add	eax,		ebx | 
|  | xor	edi,		ecx | 
|  | xor	edi,		eax | 
|  | mov	ebp,		DWORD PTR 60[esi] | 
|  | add	edx,		edi | 
|  | mov	edi,		eax | 
|  | rol	edx,		11 | 
|  | add	edx,		eax | 
|  | ; R2 46 | 
|  | xor	edi,		ebx | 
|  | xor	edi,		edx | 
|  | lea	ecx,		DWORD PTR 530742520[ebp*1+ecx] | 
|  | add	ecx,		edi | 
|  | mov	ebp,		DWORD PTR 8[esi] | 
|  | rol	ecx,		16 | 
|  | mov	edi,		edx | 
|  | ; R2 47 | 
|  | lea	ebx,		DWORD PTR 3299628645[ebp*1+ebx] | 
|  | add	ecx,		edx | 
|  | xor	edi,		eax | 
|  | xor	edi,		ecx | 
|  | mov	ebp,		DWORD PTR [esi] | 
|  | add	ebx,		edi | 
|  | mov	edi,		-1 | 
|  | rol	ebx,		23 | 
|  | add	ebx,		ecx | 
|  | ; | 
|  | ; R3 section | 
|  | ; R3 48 | 
|  | xor	edi,		edx | 
|  | or	edi,		ebx | 
|  | lea	eax,		DWORD PTR 4096336452[ebp*1+eax] | 
|  | xor	edi,		ecx | 
|  | mov	ebp,		DWORD PTR 28[esi] | 
|  | add	eax,		edi | 
|  | mov	edi,		-1 | 
|  | rol	eax,		6 | 
|  | xor	edi,		ecx | 
|  | add	eax,		ebx | 
|  | ; R3 49 | 
|  | or	edi,		eax | 
|  | lea	edx,		DWORD PTR 1126891415[ebp*1+edx] | 
|  | xor	edi,		ebx | 
|  | mov	ebp,		DWORD PTR 56[esi] | 
|  | add	edx,		edi | 
|  | mov	edi,		-1 | 
|  | rol	edx,		10 | 
|  | xor	edi,		ebx | 
|  | add	edx,		eax | 
|  | ; R3 50 | 
|  | or	edi,		edx | 
|  | lea	ecx,		DWORD PTR 2878612391[ebp*1+ecx] | 
|  | xor	edi,		eax | 
|  | mov	ebp,		DWORD PTR 20[esi] | 
|  | add	ecx,		edi | 
|  | mov	edi,		-1 | 
|  | rol	ecx,		15 | 
|  | xor	edi,		eax | 
|  | add	ecx,		edx | 
|  | ; R3 51 | 
|  | or	edi,		ecx | 
|  | lea	ebx,		DWORD PTR 4237533241[ebp*1+ebx] | 
|  | xor	edi,		edx | 
|  | mov	ebp,		DWORD PTR 48[esi] | 
|  | add	ebx,		edi | 
|  | mov	edi,		-1 | 
|  | rol	ebx,		21 | 
|  | xor	edi,		edx | 
|  | add	ebx,		ecx | 
|  | ; R3 52 | 
|  | or	edi,		ebx | 
|  | lea	eax,		DWORD PTR 1700485571[ebp*1+eax] | 
|  | xor	edi,		ecx | 
|  | mov	ebp,		DWORD PTR 12[esi] | 
|  | add	eax,		edi | 
|  | mov	edi,		-1 | 
|  | rol	eax,		6 | 
|  | xor	edi,		ecx | 
|  | add	eax,		ebx | 
|  | ; R3 53 | 
|  | or	edi,		eax | 
|  | lea	edx,		DWORD PTR 2399980690[ebp*1+edx] | 
|  | xor	edi,		ebx | 
|  | mov	ebp,		DWORD PTR 40[esi] | 
|  | add	edx,		edi | 
|  | mov	edi,		-1 | 
|  | rol	edx,		10 | 
|  | xor	edi,		ebx | 
|  | add	edx,		eax | 
|  | ; R3 54 | 
|  | or	edi,		edx | 
|  | lea	ecx,		DWORD PTR 4293915773[ebp*1+ecx] | 
|  | xor	edi,		eax | 
|  | mov	ebp,		DWORD PTR 4[esi] | 
|  | add	ecx,		edi | 
|  | mov	edi,		-1 | 
|  | rol	ecx,		15 | 
|  | xor	edi,		eax | 
|  | add	ecx,		edx | 
|  | ; R3 55 | 
|  | or	edi,		ecx | 
|  | lea	ebx,		DWORD PTR 2240044497[ebp*1+ebx] | 
|  | xor	edi,		edx | 
|  | mov	ebp,		DWORD PTR 32[esi] | 
|  | add	ebx,		edi | 
|  | mov	edi,		-1 | 
|  | rol	ebx,		21 | 
|  | xor	edi,		edx | 
|  | add	ebx,		ecx | 
|  | ; R3 56 | 
|  | or	edi,		ebx | 
|  | lea	eax,		DWORD PTR 1873313359[ebp*1+eax] | 
|  | xor	edi,		ecx | 
|  | mov	ebp,		DWORD PTR 60[esi] | 
|  | add	eax,		edi | 
|  | mov	edi,		-1 | 
|  | rol	eax,		6 | 
|  | xor	edi,		ecx | 
|  | add	eax,		ebx | 
|  | ; R3 57 | 
|  | or	edi,		eax | 
|  | lea	edx,		DWORD PTR 4264355552[ebp*1+edx] | 
|  | xor	edi,		ebx | 
|  | mov	ebp,		DWORD PTR 24[esi] | 
|  | add	edx,		edi | 
|  | mov	edi,		-1 | 
|  | rol	edx,		10 | 
|  | xor	edi,		ebx | 
|  | add	edx,		eax | 
|  | ; R3 58 | 
|  | or	edi,		edx | 
|  | lea	ecx,		DWORD PTR 2734768916[ebp*1+ecx] | 
|  | xor	edi,		eax | 
|  | mov	ebp,		DWORD PTR 52[esi] | 
|  | add	ecx,		edi | 
|  | mov	edi,		-1 | 
|  | rol	ecx,		15 | 
|  | xor	edi,		eax | 
|  | add	ecx,		edx | 
|  | ; R3 59 | 
|  | or	edi,		ecx | 
|  | lea	ebx,		DWORD PTR 1309151649[ebp*1+ebx] | 
|  | xor	edi,		edx | 
|  | mov	ebp,		DWORD PTR 16[esi] | 
|  | add	ebx,		edi | 
|  | mov	edi,		-1 | 
|  | rol	ebx,		21 | 
|  | xor	edi,		edx | 
|  | add	ebx,		ecx | 
|  | ; R3 60 | 
|  | or	edi,		ebx | 
|  | lea	eax,		DWORD PTR 4149444226[ebp*1+eax] | 
|  | xor	edi,		ecx | 
|  | mov	ebp,		DWORD PTR 44[esi] | 
|  | add	eax,		edi | 
|  | mov	edi,		-1 | 
|  | rol	eax,		6 | 
|  | xor	edi,		ecx | 
|  | add	eax,		ebx | 
|  | ; R3 61 | 
|  | or	edi,		eax | 
|  | lea	edx,		DWORD PTR 3174756917[ebp*1+edx] | 
|  | xor	edi,		ebx | 
|  | mov	ebp,		DWORD PTR 8[esi] | 
|  | add	edx,		edi | 
|  | mov	edi,		-1 | 
|  | rol	edx,		10 | 
|  | xor	edi,		ebx | 
|  | add	edx,		eax | 
|  | ; R3 62 | 
|  | or	edi,		edx | 
|  | lea	ecx,		DWORD PTR 718787259[ebp*1+ecx] | 
|  | xor	edi,		eax | 
|  | mov	ebp,		DWORD PTR 36[esi] | 
|  | add	ecx,		edi | 
|  | mov	edi,		-1 | 
|  | rol	ecx,		15 | 
|  | xor	edi,		eax | 
|  | add	ecx,		edx | 
|  | ; R3 63 | 
|  | or	edi,		ecx | 
|  | lea	ebx,		DWORD PTR 3951481745[ebp*1+ebx] | 
|  | xor	edi,		edx | 
|  | mov	ebp,		DWORD PTR 24[esp] | 
|  | add	ebx,		edi | 
|  | add	esi,		64 | 
|  | rol	ebx,		21 | 
|  | mov	edi,		DWORD PTR [ebp] | 
|  | add	ebx,		ecx | 
|  | add	eax,		edi | 
|  | mov	edi,		DWORD PTR 4[ebp] | 
|  | add	ebx,		edi | 
|  | mov	edi,		DWORD PTR 8[ebp] | 
|  | add	ecx,		edi | 
|  | mov	edi,		DWORD PTR 12[ebp] | 
|  | add	edx,		edi | 
|  | mov	DWORD PTR [ebp],eax | 
|  | mov	DWORD PTR 4[ebp],ebx | 
|  | mov	edi,		DWORD PTR [esp] | 
|  | mov	DWORD PTR 8[ebp],ecx | 
|  | mov	DWORD PTR 12[ebp],edx | 
|  | cmp	edi,		esi | 
|  | jge	L000start | 
|  | pop	eax | 
|  | pop	ebx | 
|  | pop	ebp | 
|  | pop	edi | 
|  | pop	esi | 
|  | ret | 
|  | _md5_block_x86 ENDP | 
|  | _TEXT	ENDS | 
|  | END |