openssl/crypto/sha/asm/s1-win32.asm
Andy Polyakov 69fb1c3f9d SHA clean-up Intel assembler companion.
I've chosen to nest two functions in order to save about 4K. As a result
s1-win32.asm doesn't look right (nested PROC/ENDP SEGMENT/ENDS) and it's
probably impossible to compile. I assume I have to reconsider... But not
today...
1999-09-05 14:17:42 +00:00

1716 lines
32 KiB
NASM

; Don't even think of reading this code
; It was automatically generated by sha1-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 sha1-586.asm
.486
.model FLAT
_TEXT SEGMENT
PUBLIC _sha1_block_asm_data_order
_sha1_block_asm_data_order PROC NEAR
mov ecx, DWORD PTR 12[esp]
push esi
shl ecx, 6
mov esi, DWORD PTR 12[esp]
push ebp
add ecx, esi
push ebx
mov ebp, DWORD PTR 16[esp]
push edi
mov edx, DWORD PTR 12[ebp]
sub esp, 108
mov edi, DWORD PTR 16[ebp]
mov ebx, DWORD PTR 8[ebp]
mov DWORD PTR 68[esp],ecx
; First we need to setup the X array
L000start:
; First, load the words onto the stack in network byte order
mov eax, DWORD PTR [esi]
mov ecx, DWORD PTR 4[esi]
bswap eax
bswap ecx
mov DWORD PTR [esp],eax
mov DWORD PTR 4[esp],ecx
mov eax, DWORD PTR 8[esi]
mov ecx, DWORD PTR 12[esi]
bswap eax
bswap ecx
mov DWORD PTR 8[esp],eax
mov DWORD PTR 12[esp],ecx
mov eax, DWORD PTR 16[esi]
mov ecx, DWORD PTR 20[esi]
bswap eax
bswap ecx
mov DWORD PTR 16[esp],eax
mov DWORD PTR 20[esp],ecx
mov eax, DWORD PTR 24[esi]
mov ecx, DWORD PTR 28[esi]
bswap eax
bswap ecx
mov DWORD PTR 24[esp],eax
mov DWORD PTR 28[esp],ecx
mov eax, DWORD PTR 32[esi]
mov ecx, DWORD PTR 36[esi]
bswap eax
bswap ecx
mov DWORD PTR 32[esp],eax
mov DWORD PTR 36[esp],ecx
mov eax, DWORD PTR 40[esi]
mov ecx, DWORD PTR 44[esi]
bswap eax
bswap ecx
mov DWORD PTR 40[esp],eax
mov DWORD PTR 44[esp],ecx
mov eax, DWORD PTR 48[esi]
mov ecx, DWORD PTR 52[esi]
bswap eax
bswap ecx
mov DWORD PTR 48[esp],eax
mov DWORD PTR 52[esp],ecx
mov eax, DWORD PTR 56[esi]
mov ecx, DWORD PTR 60[esi]
bswap eax
bswap ecx
mov DWORD PTR 56[esp],eax
mov DWORD PTR 60[esp],ecx
; We now have the X array on the stack
; starting at sp-4
mov DWORD PTR 132[esp],esi
L001shortcut:
;
; Start processing
mov eax, DWORD PTR [ebp]
mov ecx, DWORD PTR 4[ebp]
; 00_15 0
mov esi, ebx
mov ebp, eax
xor esi, edx
rol ebp, 5
and esi, ecx
add ebp, edi
ror ecx, 1
mov edi, DWORD PTR [esp]
ror ecx, 1
xor esi, edx
lea ebp, DWORD PTR 1518500249[edi*1+ebp]
mov edi, ecx
add esi, ebp
xor edi, ebx
mov ebp, esi
and edi, eax
rol ebp, 5
add ebp, edx
mov edx, DWORD PTR 4[esp]
ror eax, 1
xor edi, ebx
ror eax, 1
lea ebp, DWORD PTR 1518500249[edx*1+ebp]
add edi, ebp
; 00_15 2
mov edx, eax
mov ebp, edi
xor edx, ecx
rol ebp, 5
and edx, esi
add ebp, ebx
ror esi, 1
mov ebx, DWORD PTR 8[esp]
ror esi, 1
xor edx, ecx
lea ebp, DWORD PTR 1518500249[ebx*1+ebp]
mov ebx, esi
add edx, ebp
xor ebx, eax
mov ebp, edx
and ebx, edi
rol ebp, 5
add ebp, ecx
mov ecx, DWORD PTR 12[esp]
ror edi, 1
xor ebx, eax
ror edi, 1
lea ebp, DWORD PTR 1518500249[ecx*1+ebp]
add ebx, ebp
; 00_15 4
mov ecx, edi
mov ebp, ebx
xor ecx, esi
rol ebp, 5
and ecx, edx
add ebp, eax
ror edx, 1
mov eax, DWORD PTR 16[esp]
ror edx, 1
xor ecx, esi
lea ebp, DWORD PTR 1518500249[eax*1+ebp]
mov eax, edx
add ecx, ebp
xor eax, edi
mov ebp, ecx
and eax, ebx
rol ebp, 5
add ebp, esi
mov esi, DWORD PTR 20[esp]
ror ebx, 1
xor eax, edi
ror ebx, 1
lea ebp, DWORD PTR 1518500249[esi*1+ebp]
add eax, ebp
; 00_15 6
mov esi, ebx
mov ebp, eax
xor esi, edx
rol ebp, 5
and esi, ecx
add ebp, edi
ror ecx, 1
mov edi, DWORD PTR 24[esp]
ror ecx, 1
xor esi, edx
lea ebp, DWORD PTR 1518500249[edi*1+ebp]
mov edi, ecx
add esi, ebp
xor edi, ebx
mov ebp, esi
and edi, eax
rol ebp, 5
add ebp, edx
mov edx, DWORD PTR 28[esp]
ror eax, 1
xor edi, ebx
ror eax, 1
lea ebp, DWORD PTR 1518500249[edx*1+ebp]
add edi, ebp
; 00_15 8
mov edx, eax
mov ebp, edi
xor edx, ecx
rol ebp, 5
and edx, esi
add ebp, ebx
ror esi, 1
mov ebx, DWORD PTR 32[esp]
ror esi, 1
xor edx, ecx
lea ebp, DWORD PTR 1518500249[ebx*1+ebp]
mov ebx, esi
add edx, ebp
xor ebx, eax
mov ebp, edx
and ebx, edi
rol ebp, 5
add ebp, ecx
mov ecx, DWORD PTR 36[esp]
ror edi, 1
xor ebx, eax
ror edi, 1
lea ebp, DWORD PTR 1518500249[ecx*1+ebp]
add ebx, ebp
; 00_15 10
mov ecx, edi
mov ebp, ebx
xor ecx, esi
rol ebp, 5
and ecx, edx
add ebp, eax
ror edx, 1
mov eax, DWORD PTR 40[esp]
ror edx, 1
xor ecx, esi
lea ebp, DWORD PTR 1518500249[eax*1+ebp]
mov eax, edx
add ecx, ebp
xor eax, edi
mov ebp, ecx
and eax, ebx
rol ebp, 5
add ebp, esi
mov esi, DWORD PTR 44[esp]
ror ebx, 1
xor eax, edi
ror ebx, 1
lea ebp, DWORD PTR 1518500249[esi*1+ebp]
add eax, ebp
; 00_15 12
mov esi, ebx
mov ebp, eax
xor esi, edx
rol ebp, 5
and esi, ecx
add ebp, edi
ror ecx, 1
mov edi, DWORD PTR 48[esp]
ror ecx, 1
xor esi, edx
lea ebp, DWORD PTR 1518500249[edi*1+ebp]
mov edi, ecx
add esi, ebp
xor edi, ebx
mov ebp, esi
and edi, eax
rol ebp, 5
add ebp, edx
mov edx, DWORD PTR 52[esp]
ror eax, 1
xor edi, ebx
ror eax, 1
lea ebp, DWORD PTR 1518500249[edx*1+ebp]
add edi, ebp
; 00_15 14
mov edx, eax
mov ebp, edi
xor edx, ecx
rol ebp, 5
and edx, esi
add ebp, ebx
ror esi, 1
mov ebx, DWORD PTR 56[esp]
ror esi, 1
xor edx, ecx
lea ebp, DWORD PTR 1518500249[ebx*1+ebp]
mov ebx, esi
add edx, ebp
xor ebx, eax
mov ebp, edx
and ebx, edi
rol ebp, 5
add ebp, ecx
mov ecx, DWORD PTR 60[esp]
ror edi, 1
xor ebx, eax
ror edi, 1
lea ebp, DWORD PTR 1518500249[ecx*1+ebp]
add ebx, ebp
; 16_19 16
nop
mov ebp, DWORD PTR [esp]
mov ecx, DWORD PTR 8[esp]
xor ecx, ebp
mov ebp, DWORD PTR 32[esp]
xor ecx, ebp
mov ebp, DWORD PTR 52[esp]
xor ecx, ebp
mov ebp, edi
rol ecx, 1
xor ebp, esi
mov DWORD PTR [esp],ecx
and ebp, edx
lea ecx, DWORD PTR 1518500249[eax*1+ecx]
xor ebp, esi
mov eax, ebx
add ecx, ebp
rol eax, 5
ror edx, 1
add ecx, eax
mov eax, DWORD PTR 4[esp]
mov ebp, DWORD PTR 12[esp]
xor eax, ebp
mov ebp, DWORD PTR 36[esp]
xor eax, ebp
mov ebp, DWORD PTR 56[esp]
ror edx, 1
xor eax, ebp
rol eax, 1
mov ebp, edx
xor ebp, edi
mov DWORD PTR 4[esp],eax
and ebp, ebx
lea eax, DWORD PTR 1518500249[esi*1+eax]
xor ebp, edi
mov esi, ecx
rol esi, 5
ror ebx, 1
add eax, esi
ror ebx, 1
add eax, ebp
; 16_19 18
mov ebp, DWORD PTR 8[esp]
mov esi, DWORD PTR 16[esp]
xor esi, ebp
mov ebp, DWORD PTR 40[esp]
xor esi, ebp
mov ebp, DWORD PTR 60[esp]
xor esi, ebp
mov ebp, ebx
rol esi, 1
xor ebp, edx
mov DWORD PTR 8[esp],esi
and ebp, ecx
lea esi, DWORD PTR 1518500249[edi*1+esi]
xor ebp, edx
mov edi, eax
add esi, ebp
rol edi, 5
ror ecx, 1
add esi, edi
mov edi, DWORD PTR 12[esp]
mov ebp, DWORD PTR 20[esp]
xor edi, ebp
mov ebp, DWORD PTR 44[esp]
xor edi, ebp
mov ebp, DWORD PTR [esp]
ror ecx, 1
xor edi, ebp
rol edi, 1
mov ebp, ecx
xor ebp, ebx
mov DWORD PTR 12[esp],edi
and ebp, eax
lea edi, DWORD PTR 1518500249[edx*1+edi]
xor ebp, ebx
mov edx, esi
rol edx, 5
ror eax, 1
add edi, edx
ror eax, 1
add edi, ebp
; 20_39 20
mov edx, DWORD PTR 16[esp]
mov ebp, DWORD PTR 24[esp]
xor edx, ebp
mov ebp, DWORD PTR 48[esp]
xor edx, ebp
mov ebp, DWORD PTR 4[esp]
xor edx, ebp
mov ebp, esi
rol edx, 1
xor ebp, eax
mov DWORD PTR 16[esp],edx
xor ebp, ecx
lea edx, DWORD PTR 1859775393[ebx*1+edx]
mov ebx, edi
rol ebx, 5
ror esi, 1
add ebx, ebp
ror esi, 1
add edx, ebx
; 20_39 21
mov ebx, DWORD PTR 20[esp]
mov ebp, DWORD PTR 28[esp]
xor ebx, ebp
mov ebp, DWORD PTR 52[esp]
xor ebx, ebp
mov ebp, DWORD PTR 8[esp]
xor ebx, ebp
mov ebp, edi
rol ebx, 1
xor ebp, esi
mov DWORD PTR 20[esp],ebx
xor ebp, eax
lea ebx, DWORD PTR 1859775393[ecx*1+ebx]
mov ecx, edx
rol ecx, 5
ror edi, 1
add ecx, ebp
ror edi, 1
add ebx, ecx
; 20_39 22
mov ecx, DWORD PTR 24[esp]
mov ebp, DWORD PTR 32[esp]
xor ecx, ebp
mov ebp, DWORD PTR 56[esp]
xor ecx, ebp
mov ebp, DWORD PTR 12[esp]
xor ecx, ebp
mov ebp, edx
rol ecx, 1
xor ebp, edi
mov DWORD PTR 24[esp],ecx
xor ebp, esi
lea ecx, DWORD PTR 1859775393[eax*1+ecx]
mov eax, ebx
rol eax, 5
ror edx, 1
add eax, ebp
ror edx, 1
add ecx, eax
; 20_39 23
mov eax, DWORD PTR 28[esp]
mov ebp, DWORD PTR 36[esp]
xor eax, ebp
mov ebp, DWORD PTR 60[esp]
xor eax, ebp
mov ebp, DWORD PTR 16[esp]
xor eax, ebp
mov ebp, ebx
rol eax, 1
xor ebp, edx
mov DWORD PTR 28[esp],eax
xor ebp, edi
lea eax, DWORD PTR 1859775393[esi*1+eax]
mov esi, ecx
rol esi, 5
ror ebx, 1
add esi, ebp
ror ebx, 1
add eax, esi
; 20_39 24
mov esi, DWORD PTR 32[esp]
mov ebp, DWORD PTR 40[esp]
xor esi, ebp
mov ebp, DWORD PTR [esp]
xor esi, ebp
mov ebp, DWORD PTR 20[esp]
xor esi, ebp
mov ebp, ecx
rol esi, 1
xor ebp, ebx
mov DWORD PTR 32[esp],esi
xor ebp, edx
lea esi, DWORD PTR 1859775393[edi*1+esi]
mov edi, eax
rol edi, 5
ror ecx, 1
add edi, ebp
ror ecx, 1
add esi, edi
; 20_39 25
mov edi, DWORD PTR 36[esp]
mov ebp, DWORD PTR 44[esp]
xor edi, ebp
mov ebp, DWORD PTR 4[esp]
xor edi, ebp
mov ebp, DWORD PTR 24[esp]
xor edi, ebp
mov ebp, eax
rol edi, 1
xor ebp, ecx
mov DWORD PTR 36[esp],edi
xor ebp, ebx
lea edi, DWORD PTR 1859775393[edx*1+edi]
mov edx, esi
rol edx, 5
ror eax, 1
add edx, ebp
ror eax, 1
add edi, edx
; 20_39 26
mov edx, DWORD PTR 40[esp]
mov ebp, DWORD PTR 48[esp]
xor edx, ebp
mov ebp, DWORD PTR 8[esp]
xor edx, ebp
mov ebp, DWORD PTR 28[esp]
xor edx, ebp
mov ebp, esi
rol edx, 1
xor ebp, eax
mov DWORD PTR 40[esp],edx
xor ebp, ecx
lea edx, DWORD PTR 1859775393[ebx*1+edx]
mov ebx, edi
rol ebx, 5
ror esi, 1
add ebx, ebp
ror esi, 1
add edx, ebx
; 20_39 27
mov ebx, DWORD PTR 44[esp]
mov ebp, DWORD PTR 52[esp]
xor ebx, ebp
mov ebp, DWORD PTR 12[esp]
xor ebx, ebp
mov ebp, DWORD PTR 32[esp]
xor ebx, ebp
mov ebp, edi
rol ebx, 1
xor ebp, esi
mov DWORD PTR 44[esp],ebx
xor ebp, eax
lea ebx, DWORD PTR 1859775393[ecx*1+ebx]
mov ecx, edx
rol ecx, 5
ror edi, 1
add ecx, ebp
ror edi, 1
add ebx, ecx
; 20_39 28
mov ecx, DWORD PTR 48[esp]
mov ebp, DWORD PTR 56[esp]
xor ecx, ebp
mov ebp, DWORD PTR 16[esp]
xor ecx, ebp
mov ebp, DWORD PTR 36[esp]
xor ecx, ebp
mov ebp, edx
rol ecx, 1
xor ebp, edi
mov DWORD PTR 48[esp],ecx
xor ebp, esi
lea ecx, DWORD PTR 1859775393[eax*1+ecx]
mov eax, ebx
rol eax, 5
ror edx, 1
add eax, ebp
ror edx, 1
add ecx, eax
; 20_39 29
mov eax, DWORD PTR 52[esp]
mov ebp, DWORD PTR 60[esp]
xor eax, ebp
mov ebp, DWORD PTR 20[esp]
xor eax, ebp
mov ebp, DWORD PTR 40[esp]
xor eax, ebp
mov ebp, ebx
rol eax, 1
xor ebp, edx
mov DWORD PTR 52[esp],eax
xor ebp, edi
lea eax, DWORD PTR 1859775393[esi*1+eax]
mov esi, ecx
rol esi, 5
ror ebx, 1
add esi, ebp
ror ebx, 1
add eax, esi
; 20_39 30
mov esi, DWORD PTR 56[esp]
mov ebp, DWORD PTR [esp]
xor esi, ebp
mov ebp, DWORD PTR 24[esp]
xor esi, ebp
mov ebp, DWORD PTR 44[esp]
xor esi, ebp
mov ebp, ecx
rol esi, 1
xor ebp, ebx
mov DWORD PTR 56[esp],esi
xor ebp, edx
lea esi, DWORD PTR 1859775393[edi*1+esi]
mov edi, eax
rol edi, 5
ror ecx, 1
add edi, ebp
ror ecx, 1
add esi, edi
; 20_39 31
mov edi, DWORD PTR 60[esp]
mov ebp, DWORD PTR 4[esp]
xor edi, ebp
mov ebp, DWORD PTR 28[esp]
xor edi, ebp
mov ebp, DWORD PTR 48[esp]
xor edi, ebp
mov ebp, eax
rol edi, 1
xor ebp, ecx
mov DWORD PTR 60[esp],edi
xor ebp, ebx
lea edi, DWORD PTR 1859775393[edx*1+edi]
mov edx, esi
rol edx, 5
ror eax, 1
add edx, ebp
ror eax, 1
add edi, edx
; 20_39 32
mov edx, DWORD PTR [esp]
mov ebp, DWORD PTR 8[esp]
xor edx, ebp
mov ebp, DWORD PTR 32[esp]
xor edx, ebp
mov ebp, DWORD PTR 52[esp]
xor edx, ebp
mov ebp, esi
rol edx, 1
xor ebp, eax
mov DWORD PTR [esp],edx
xor ebp, ecx
lea edx, DWORD PTR 1859775393[ebx*1+edx]
mov ebx, edi
rol ebx, 5
ror esi, 1
add ebx, ebp
ror esi, 1
add edx, ebx
; 20_39 33
mov ebx, DWORD PTR 4[esp]
mov ebp, DWORD PTR 12[esp]
xor ebx, ebp
mov ebp, DWORD PTR 36[esp]
xor ebx, ebp
mov ebp, DWORD PTR 56[esp]
xor ebx, ebp
mov ebp, edi
rol ebx, 1
xor ebp, esi
mov DWORD PTR 4[esp],ebx
xor ebp, eax
lea ebx, DWORD PTR 1859775393[ecx*1+ebx]
mov ecx, edx
rol ecx, 5
ror edi, 1
add ecx, ebp
ror edi, 1
add ebx, ecx
; 20_39 34
mov ecx, DWORD PTR 8[esp]
mov ebp, DWORD PTR 16[esp]
xor ecx, ebp
mov ebp, DWORD PTR 40[esp]
xor ecx, ebp
mov ebp, DWORD PTR 60[esp]
xor ecx, ebp
mov ebp, edx
rol ecx, 1
xor ebp, edi
mov DWORD PTR 8[esp],ecx
xor ebp, esi
lea ecx, DWORD PTR 1859775393[eax*1+ecx]
mov eax, ebx
rol eax, 5
ror edx, 1
add eax, ebp
ror edx, 1
add ecx, eax
; 20_39 35
mov eax, DWORD PTR 12[esp]
mov ebp, DWORD PTR 20[esp]
xor eax, ebp
mov ebp, DWORD PTR 44[esp]
xor eax, ebp
mov ebp, DWORD PTR [esp]
xor eax, ebp
mov ebp, ebx
rol eax, 1
xor ebp, edx
mov DWORD PTR 12[esp],eax
xor ebp, edi
lea eax, DWORD PTR 1859775393[esi*1+eax]
mov esi, ecx
rol esi, 5
ror ebx, 1
add esi, ebp
ror ebx, 1
add eax, esi
; 20_39 36
mov esi, DWORD PTR 16[esp]
mov ebp, DWORD PTR 24[esp]
xor esi, ebp
mov ebp, DWORD PTR 48[esp]
xor esi, ebp
mov ebp, DWORD PTR 4[esp]
xor esi, ebp
mov ebp, ecx
rol esi, 1
xor ebp, ebx
mov DWORD PTR 16[esp],esi
xor ebp, edx
lea esi, DWORD PTR 1859775393[edi*1+esi]
mov edi, eax
rol edi, 5
ror ecx, 1
add edi, ebp
ror ecx, 1
add esi, edi
; 20_39 37
mov edi, DWORD PTR 20[esp]
mov ebp, DWORD PTR 28[esp]
xor edi, ebp
mov ebp, DWORD PTR 52[esp]
xor edi, ebp
mov ebp, DWORD PTR 8[esp]
xor edi, ebp
mov ebp, eax
rol edi, 1
xor ebp, ecx
mov DWORD PTR 20[esp],edi
xor ebp, ebx
lea edi, DWORD PTR 1859775393[edx*1+edi]
mov edx, esi
rol edx, 5
ror eax, 1
add edx, ebp
ror eax, 1
add edi, edx
; 20_39 38
mov edx, DWORD PTR 24[esp]
mov ebp, DWORD PTR 32[esp]
xor edx, ebp
mov ebp, DWORD PTR 56[esp]
xor edx, ebp
mov ebp, DWORD PTR 12[esp]
xor edx, ebp
mov ebp, esi
rol edx, 1
xor ebp, eax
mov DWORD PTR 24[esp],edx
xor ebp, ecx
lea edx, DWORD PTR 1859775393[ebx*1+edx]
mov ebx, edi
rol ebx, 5
ror esi, 1
add ebx, ebp
ror esi, 1
add edx, ebx
; 20_39 39
mov ebx, DWORD PTR 28[esp]
mov ebp, DWORD PTR 36[esp]
xor ebx, ebp
mov ebp, DWORD PTR 60[esp]
xor ebx, ebp
mov ebp, DWORD PTR 16[esp]
xor ebx, ebp
mov ebp, edi
rol ebx, 1
xor ebp, esi
mov DWORD PTR 28[esp],ebx
xor ebp, eax
lea ebx, DWORD PTR 1859775393[ecx*1+ebx]
mov ecx, edx
rol ecx, 5
ror edi, 1
add ecx, ebp
ror edi, 1
add ebx, ecx
; 40_59 40
mov ecx, DWORD PTR 32[esp]
mov ebp, DWORD PTR 40[esp]
xor ecx, ebp
mov ebp, DWORD PTR [esp]
xor ecx, ebp
mov ebp, DWORD PTR 20[esp]
xor ecx, ebp
mov ebp, edx
rol ecx, 1
or ebp, edi
mov DWORD PTR 32[esp],ecx
and ebp, esi
lea ecx, DWORD PTR 2400959708[eax*1+ecx]
mov eax, edx
ror edx, 1
and eax, edi
or ebp, eax
mov eax, ebx
rol eax, 5
add ebp, eax
mov eax, DWORD PTR 36[esp]
add ecx, ebp
mov ebp, DWORD PTR 44[esp]
xor eax, ebp
mov ebp, DWORD PTR 4[esp]
xor eax, ebp
mov ebp, DWORD PTR 24[esp]
ror edx, 1
xor eax, ebp
rol eax, 1
mov ebp, ebx
mov DWORD PTR 36[esp],eax
or ebp, edx
lea eax, DWORD PTR 2400959708[esi*1+eax]
mov esi, ebx
and ebp, edi
and esi, edx
or ebp, esi
mov esi, ecx
rol esi, 5
ror ebx, 1
add ebp, esi
ror ebx, 1
add eax, ebp
; 40_59 41
; 40_59 42
mov esi, DWORD PTR 40[esp]
mov ebp, DWORD PTR 48[esp]
xor esi, ebp
mov ebp, DWORD PTR 8[esp]
xor esi, ebp
mov ebp, DWORD PTR 28[esp]
xor esi, ebp
mov ebp, ecx
rol esi, 1
or ebp, ebx
mov DWORD PTR 40[esp],esi
and ebp, edx
lea esi, DWORD PTR 2400959708[edi*1+esi]
mov edi, ecx
ror ecx, 1
and edi, ebx
or ebp, edi
mov edi, eax
rol edi, 5
add ebp, edi
mov edi, DWORD PTR 44[esp]
add esi, ebp
mov ebp, DWORD PTR 52[esp]
xor edi, ebp
mov ebp, DWORD PTR 12[esp]
xor edi, ebp
mov ebp, DWORD PTR 32[esp]
ror ecx, 1
xor edi, ebp
rol edi, 1
mov ebp, eax
mov DWORD PTR 44[esp],edi
or ebp, ecx
lea edi, DWORD PTR 2400959708[edx*1+edi]
mov edx, eax
and ebp, ebx
and edx, ecx
or ebp, edx
mov edx, esi
rol edx, 5
ror eax, 1
add ebp, edx
ror eax, 1
add edi, ebp
; 40_59 43
; 40_59 44
mov edx, DWORD PTR 48[esp]
mov ebp, DWORD PTR 56[esp]
xor edx, ebp
mov ebp, DWORD PTR 16[esp]
xor edx, ebp
mov ebp, DWORD PTR 36[esp]
xor edx, ebp
mov ebp, esi
rol edx, 1
or ebp, eax
mov DWORD PTR 48[esp],edx
and ebp, ecx
lea edx, DWORD PTR 2400959708[ebx*1+edx]
mov ebx, esi
ror esi, 1
and ebx, eax
or ebp, ebx
mov ebx, edi
rol ebx, 5
add ebp, ebx
mov ebx, DWORD PTR 52[esp]
add edx, ebp
mov ebp, DWORD PTR 60[esp]
xor ebx, ebp
mov ebp, DWORD PTR 20[esp]
xor ebx, ebp
mov ebp, DWORD PTR 40[esp]
ror esi, 1
xor ebx, ebp
rol ebx, 1
mov ebp, edi
mov DWORD PTR 52[esp],ebx
or ebp, esi
lea ebx, DWORD PTR 2400959708[ecx*1+ebx]
mov ecx, edi
and ebp, eax
and ecx, esi
or ebp, ecx
mov ecx, edx
rol ecx, 5
ror edi, 1
add ebp, ecx
ror edi, 1
add ebx, ebp
; 40_59 45
; 40_59 46
mov ecx, DWORD PTR 56[esp]
mov ebp, DWORD PTR [esp]
xor ecx, ebp
mov ebp, DWORD PTR 24[esp]
xor ecx, ebp
mov ebp, DWORD PTR 44[esp]
xor ecx, ebp
mov ebp, edx
rol ecx, 1
or ebp, edi
mov DWORD PTR 56[esp],ecx
and ebp, esi
lea ecx, DWORD PTR 2400959708[eax*1+ecx]
mov eax, edx
ror edx, 1
and eax, edi
or ebp, eax
mov eax, ebx
rol eax, 5
add ebp, eax
mov eax, DWORD PTR 60[esp]
add ecx, ebp
mov ebp, DWORD PTR 4[esp]
xor eax, ebp
mov ebp, DWORD PTR 28[esp]
xor eax, ebp
mov ebp, DWORD PTR 48[esp]
ror edx, 1
xor eax, ebp
rol eax, 1
mov ebp, ebx
mov DWORD PTR 60[esp],eax
or ebp, edx
lea eax, DWORD PTR 2400959708[esi*1+eax]
mov esi, ebx
and ebp, edi
and esi, edx
or ebp, esi
mov esi, ecx
rol esi, 5
ror ebx, 1
add ebp, esi
ror ebx, 1
add eax, ebp
; 40_59 47
; 40_59 48
mov esi, DWORD PTR [esp]
mov ebp, DWORD PTR 8[esp]
xor esi, ebp
mov ebp, DWORD PTR 32[esp]
xor esi, ebp
mov ebp, DWORD PTR 52[esp]
xor esi, ebp
mov ebp, ecx
rol esi, 1
or ebp, ebx
mov DWORD PTR [esp],esi
and ebp, edx
lea esi, DWORD PTR 2400959708[edi*1+esi]
mov edi, ecx
ror ecx, 1
and edi, ebx
or ebp, edi
mov edi, eax
rol edi, 5
add ebp, edi
mov edi, DWORD PTR 4[esp]
add esi, ebp
mov ebp, DWORD PTR 12[esp]
xor edi, ebp
mov ebp, DWORD PTR 36[esp]
xor edi, ebp
mov ebp, DWORD PTR 56[esp]
ror ecx, 1
xor edi, ebp
rol edi, 1
mov ebp, eax
mov DWORD PTR 4[esp],edi
or ebp, ecx
lea edi, DWORD PTR 2400959708[edx*1+edi]
mov edx, eax
and ebp, ebx
and edx, ecx
or ebp, edx
mov edx, esi
rol edx, 5
ror eax, 1
add ebp, edx
ror eax, 1
add edi, ebp
; 40_59 49
; 40_59 50
mov edx, DWORD PTR 8[esp]
mov ebp, DWORD PTR 16[esp]
xor edx, ebp
mov ebp, DWORD PTR 40[esp]
xor edx, ebp
mov ebp, DWORD PTR 60[esp]
xor edx, ebp
mov ebp, esi
rol edx, 1
or ebp, eax
mov DWORD PTR 8[esp],edx
and ebp, ecx
lea edx, DWORD PTR 2400959708[ebx*1+edx]
mov ebx, esi
ror esi, 1
and ebx, eax
or ebp, ebx
mov ebx, edi
rol ebx, 5
add ebp, ebx
mov ebx, DWORD PTR 12[esp]
add edx, ebp
mov ebp, DWORD PTR 20[esp]
xor ebx, ebp
mov ebp, DWORD PTR 44[esp]
xor ebx, ebp
mov ebp, DWORD PTR [esp]
ror esi, 1
xor ebx, ebp
rol ebx, 1
mov ebp, edi
mov DWORD PTR 12[esp],ebx
or ebp, esi
lea ebx, DWORD PTR 2400959708[ecx*1+ebx]
mov ecx, edi
and ebp, eax
and ecx, esi
or ebp, ecx
mov ecx, edx
rol ecx, 5
ror edi, 1
add ebp, ecx
ror edi, 1
add ebx, ebp
; 40_59 51
; 40_59 52
mov ecx, DWORD PTR 16[esp]
mov ebp, DWORD PTR 24[esp]
xor ecx, ebp
mov ebp, DWORD PTR 48[esp]
xor ecx, ebp
mov ebp, DWORD PTR 4[esp]
xor ecx, ebp
mov ebp, edx
rol ecx, 1
or ebp, edi
mov DWORD PTR 16[esp],ecx
and ebp, esi
lea ecx, DWORD PTR 2400959708[eax*1+ecx]
mov eax, edx
ror edx, 1
and eax, edi
or ebp, eax
mov eax, ebx
rol eax, 5
add ebp, eax
mov eax, DWORD PTR 20[esp]
add ecx, ebp
mov ebp, DWORD PTR 28[esp]
xor eax, ebp
mov ebp, DWORD PTR 52[esp]
xor eax, ebp
mov ebp, DWORD PTR 8[esp]
ror edx, 1
xor eax, ebp
rol eax, 1
mov ebp, ebx
mov DWORD PTR 20[esp],eax
or ebp, edx
lea eax, DWORD PTR 2400959708[esi*1+eax]
mov esi, ebx
and ebp, edi
and esi, edx
or ebp, esi
mov esi, ecx
rol esi, 5
ror ebx, 1
add ebp, esi
ror ebx, 1
add eax, ebp
; 40_59 53
; 40_59 54
mov esi, DWORD PTR 24[esp]
mov ebp, DWORD PTR 32[esp]
xor esi, ebp
mov ebp, DWORD PTR 56[esp]
xor esi, ebp
mov ebp, DWORD PTR 12[esp]
xor esi, ebp
mov ebp, ecx
rol esi, 1
or ebp, ebx
mov DWORD PTR 24[esp],esi
and ebp, edx
lea esi, DWORD PTR 2400959708[edi*1+esi]
mov edi, ecx
ror ecx, 1
and edi, ebx
or ebp, edi
mov edi, eax
rol edi, 5
add ebp, edi
mov edi, DWORD PTR 28[esp]
add esi, ebp
mov ebp, DWORD PTR 36[esp]
xor edi, ebp
mov ebp, DWORD PTR 60[esp]
xor edi, ebp
mov ebp, DWORD PTR 16[esp]
ror ecx, 1
xor edi, ebp
rol edi, 1
mov ebp, eax
mov DWORD PTR 28[esp],edi
or ebp, ecx
lea edi, DWORD PTR 2400959708[edx*1+edi]
mov edx, eax
and ebp, ebx
and edx, ecx
or ebp, edx
mov edx, esi
rol edx, 5
ror eax, 1
add ebp, edx
ror eax, 1
add edi, ebp
; 40_59 55
; 40_59 56
mov edx, DWORD PTR 32[esp]
mov ebp, DWORD PTR 40[esp]
xor edx, ebp
mov ebp, DWORD PTR [esp]
xor edx, ebp
mov ebp, DWORD PTR 20[esp]
xor edx, ebp
mov ebp, esi
rol edx, 1
or ebp, eax
mov DWORD PTR 32[esp],edx
and ebp, ecx
lea edx, DWORD PTR 2400959708[ebx*1+edx]
mov ebx, esi
ror esi, 1
and ebx, eax
or ebp, ebx
mov ebx, edi
rol ebx, 5
add ebp, ebx
mov ebx, DWORD PTR 36[esp]
add edx, ebp
mov ebp, DWORD PTR 44[esp]
xor ebx, ebp
mov ebp, DWORD PTR 4[esp]
xor ebx, ebp
mov ebp, DWORD PTR 24[esp]
ror esi, 1
xor ebx, ebp
rol ebx, 1
mov ebp, edi
mov DWORD PTR 36[esp],ebx
or ebp, esi
lea ebx, DWORD PTR 2400959708[ecx*1+ebx]
mov ecx, edi
and ebp, eax
and ecx, esi
or ebp, ecx
mov ecx, edx
rol ecx, 5
ror edi, 1
add ebp, ecx
ror edi, 1
add ebx, ebp
; 40_59 57
; 40_59 58
mov ecx, DWORD PTR 40[esp]
mov ebp, DWORD PTR 48[esp]
xor ecx, ebp
mov ebp, DWORD PTR 8[esp]
xor ecx, ebp
mov ebp, DWORD PTR 28[esp]
xor ecx, ebp
mov ebp, edx
rol ecx, 1
or ebp, edi
mov DWORD PTR 40[esp],ecx
and ebp, esi
lea ecx, DWORD PTR 2400959708[eax*1+ecx]
mov eax, edx
ror edx, 1
and eax, edi
or ebp, eax
mov eax, ebx
rol eax, 5
add ebp, eax
mov eax, DWORD PTR 44[esp]
add ecx, ebp
mov ebp, DWORD PTR 52[esp]
xor eax, ebp
mov ebp, DWORD PTR 12[esp]
xor eax, ebp
mov ebp, DWORD PTR 32[esp]
ror edx, 1
xor eax, ebp
rol eax, 1
mov ebp, ebx
mov DWORD PTR 44[esp],eax
or ebp, edx
lea eax, DWORD PTR 2400959708[esi*1+eax]
mov esi, ebx
and ebp, edi
and esi, edx
or ebp, esi
mov esi, ecx
rol esi, 5
ror ebx, 1
add ebp, esi
ror ebx, 1
add eax, ebp
; 40_59 59
; 20_39 60
mov esi, DWORD PTR 48[esp]
mov ebp, DWORD PTR 56[esp]
xor esi, ebp
mov ebp, DWORD PTR 16[esp]
xor esi, ebp
mov ebp, DWORD PTR 36[esp]
xor esi, ebp
mov ebp, ecx
rol esi, 1
xor ebp, ebx
mov DWORD PTR 48[esp],esi
xor ebp, edx
lea esi, DWORD PTR 3395469782[edi*1+esi]
mov edi, eax
rol edi, 5
ror ecx, 1
add edi, ebp
ror ecx, 1
add esi, edi
; 20_39 61
mov edi, DWORD PTR 52[esp]
mov ebp, DWORD PTR 60[esp]
xor edi, ebp
mov ebp, DWORD PTR 20[esp]
xor edi, ebp
mov ebp, DWORD PTR 40[esp]
xor edi, ebp
mov ebp, eax
rol edi, 1
xor ebp, ecx
mov DWORD PTR 52[esp],edi
xor ebp, ebx
lea edi, DWORD PTR 3395469782[edx*1+edi]
mov edx, esi
rol edx, 5
ror eax, 1
add edx, ebp
ror eax, 1
add edi, edx
; 20_39 62
mov edx, DWORD PTR 56[esp]
mov ebp, DWORD PTR [esp]
xor edx, ebp
mov ebp, DWORD PTR 24[esp]
xor edx, ebp
mov ebp, DWORD PTR 44[esp]
xor edx, ebp
mov ebp, esi
rol edx, 1
xor ebp, eax
mov DWORD PTR 56[esp],edx
xor ebp, ecx
lea edx, DWORD PTR 3395469782[ebx*1+edx]
mov ebx, edi
rol ebx, 5
ror esi, 1
add ebx, ebp
ror esi, 1
add edx, ebx
; 20_39 63
mov ebx, DWORD PTR 60[esp]
mov ebp, DWORD PTR 4[esp]
xor ebx, ebp
mov ebp, DWORD PTR 28[esp]
xor ebx, ebp
mov ebp, DWORD PTR 48[esp]
xor ebx, ebp
mov ebp, edi
rol ebx, 1
xor ebp, esi
mov DWORD PTR 60[esp],ebx
xor ebp, eax
lea ebx, DWORD PTR 3395469782[ecx*1+ebx]
mov ecx, edx
rol ecx, 5
ror edi, 1
add ecx, ebp
ror edi, 1
add ebx, ecx
; 20_39 64
mov ecx, DWORD PTR [esp]
mov ebp, DWORD PTR 8[esp]
xor ecx, ebp
mov ebp, DWORD PTR 32[esp]
xor ecx, ebp
mov ebp, DWORD PTR 52[esp]
xor ecx, ebp
mov ebp, edx
rol ecx, 1
xor ebp, edi
mov DWORD PTR [esp],ecx
xor ebp, esi
lea ecx, DWORD PTR 3395469782[eax*1+ecx]
mov eax, ebx
rol eax, 5
ror edx, 1
add eax, ebp
ror edx, 1
add ecx, eax
; 20_39 65
mov eax, DWORD PTR 4[esp]
mov ebp, DWORD PTR 12[esp]
xor eax, ebp
mov ebp, DWORD PTR 36[esp]
xor eax, ebp
mov ebp, DWORD PTR 56[esp]
xor eax, ebp
mov ebp, ebx
rol eax, 1
xor ebp, edx
mov DWORD PTR 4[esp],eax
xor ebp, edi
lea eax, DWORD PTR 3395469782[esi*1+eax]
mov esi, ecx
rol esi, 5
ror ebx, 1
add esi, ebp
ror ebx, 1
add eax, esi
; 20_39 66
mov esi, DWORD PTR 8[esp]
mov ebp, DWORD PTR 16[esp]
xor esi, ebp
mov ebp, DWORD PTR 40[esp]
xor esi, ebp
mov ebp, DWORD PTR 60[esp]
xor esi, ebp
mov ebp, ecx
rol esi, 1
xor ebp, ebx
mov DWORD PTR 8[esp],esi
xor ebp, edx
lea esi, DWORD PTR 3395469782[edi*1+esi]
mov edi, eax
rol edi, 5
ror ecx, 1
add edi, ebp
ror ecx, 1
add esi, edi
; 20_39 67
mov edi, DWORD PTR 12[esp]
mov ebp, DWORD PTR 20[esp]
xor edi, ebp
mov ebp, DWORD PTR 44[esp]
xor edi, ebp
mov ebp, DWORD PTR [esp]
xor edi, ebp
mov ebp, eax
rol edi, 1
xor ebp, ecx
mov DWORD PTR 12[esp],edi
xor ebp, ebx
lea edi, DWORD PTR 3395469782[edx*1+edi]
mov edx, esi
rol edx, 5
ror eax, 1
add edx, ebp
ror eax, 1
add edi, edx
; 20_39 68
mov edx, DWORD PTR 16[esp]
mov ebp, DWORD PTR 24[esp]
xor edx, ebp
mov ebp, DWORD PTR 48[esp]
xor edx, ebp
mov ebp, DWORD PTR 4[esp]
xor edx, ebp
mov ebp, esi
rol edx, 1
xor ebp, eax
mov DWORD PTR 16[esp],edx
xor ebp, ecx
lea edx, DWORD PTR 3395469782[ebx*1+edx]
mov ebx, edi
rol ebx, 5
ror esi, 1
add ebx, ebp
ror esi, 1
add edx, ebx
; 20_39 69
mov ebx, DWORD PTR 20[esp]
mov ebp, DWORD PTR 28[esp]
xor ebx, ebp
mov ebp, DWORD PTR 52[esp]
xor ebx, ebp
mov ebp, DWORD PTR 8[esp]
xor ebx, ebp
mov ebp, edi
rol ebx, 1
xor ebp, esi
mov DWORD PTR 20[esp],ebx
xor ebp, eax
lea ebx, DWORD PTR 3395469782[ecx*1+ebx]
mov ecx, edx
rol ecx, 5
ror edi, 1
add ecx, ebp
ror edi, 1
add ebx, ecx
; 20_39 70
mov ecx, DWORD PTR 24[esp]
mov ebp, DWORD PTR 32[esp]
xor ecx, ebp
mov ebp, DWORD PTR 56[esp]
xor ecx, ebp
mov ebp, DWORD PTR 12[esp]
xor ecx, ebp
mov ebp, edx
rol ecx, 1
xor ebp, edi
mov DWORD PTR 24[esp],ecx
xor ebp, esi
lea ecx, DWORD PTR 3395469782[eax*1+ecx]
mov eax, ebx
rol eax, 5
ror edx, 1
add eax, ebp
ror edx, 1
add ecx, eax
; 20_39 71
mov eax, DWORD PTR 28[esp]
mov ebp, DWORD PTR 36[esp]
xor eax, ebp
mov ebp, DWORD PTR 60[esp]
xor eax, ebp
mov ebp, DWORD PTR 16[esp]
xor eax, ebp
mov ebp, ebx
rol eax, 1
xor ebp, edx
mov DWORD PTR 28[esp],eax
xor ebp, edi
lea eax, DWORD PTR 3395469782[esi*1+eax]
mov esi, ecx
rol esi, 5
ror ebx, 1
add esi, ebp
ror ebx, 1
add eax, esi
; 20_39 72
mov esi, DWORD PTR 32[esp]
mov ebp, DWORD PTR 40[esp]
xor esi, ebp
mov ebp, DWORD PTR [esp]
xor esi, ebp
mov ebp, DWORD PTR 20[esp]
xor esi, ebp
mov ebp, ecx
rol esi, 1
xor ebp, ebx
mov DWORD PTR 32[esp],esi
xor ebp, edx
lea esi, DWORD PTR 3395469782[edi*1+esi]
mov edi, eax
rol edi, 5
ror ecx, 1
add edi, ebp
ror ecx, 1
add esi, edi
; 20_39 73
mov edi, DWORD PTR 36[esp]
mov ebp, DWORD PTR 44[esp]
xor edi, ebp
mov ebp, DWORD PTR 4[esp]
xor edi, ebp
mov ebp, DWORD PTR 24[esp]
xor edi, ebp
mov ebp, eax
rol edi, 1
xor ebp, ecx
mov DWORD PTR 36[esp],edi
xor ebp, ebx
lea edi, DWORD PTR 3395469782[edx*1+edi]
mov edx, esi
rol edx, 5
ror eax, 1
add edx, ebp
ror eax, 1
add edi, edx
; 20_39 74
mov edx, DWORD PTR 40[esp]
mov ebp, DWORD PTR 48[esp]
xor edx, ebp
mov ebp, DWORD PTR 8[esp]
xor edx, ebp
mov ebp, DWORD PTR 28[esp]
xor edx, ebp
mov ebp, esi
rol edx, 1
xor ebp, eax
mov DWORD PTR 40[esp],edx
xor ebp, ecx
lea edx, DWORD PTR 3395469782[ebx*1+edx]
mov ebx, edi
rol ebx, 5
ror esi, 1
add ebx, ebp
ror esi, 1
add edx, ebx
; 20_39 75
mov ebx, DWORD PTR 44[esp]
mov ebp, DWORD PTR 52[esp]
xor ebx, ebp
mov ebp, DWORD PTR 12[esp]
xor ebx, ebp
mov ebp, DWORD PTR 32[esp]
xor ebx, ebp
mov ebp, edi
rol ebx, 1
xor ebp, esi
mov DWORD PTR 44[esp],ebx
xor ebp, eax
lea ebx, DWORD PTR 3395469782[ecx*1+ebx]
mov ecx, edx
rol ecx, 5
ror edi, 1
add ecx, ebp
ror edi, 1
add ebx, ecx
; 20_39 76
mov ecx, DWORD PTR 48[esp]
mov ebp, DWORD PTR 56[esp]
xor ecx, ebp
mov ebp, DWORD PTR 16[esp]
xor ecx, ebp
mov ebp, DWORD PTR 36[esp]
xor ecx, ebp
mov ebp, edx
rol ecx, 1
xor ebp, edi
mov DWORD PTR 48[esp],ecx
xor ebp, esi
lea ecx, DWORD PTR 3395469782[eax*1+ecx]
mov eax, ebx
rol eax, 5
ror edx, 1
add eax, ebp
ror edx, 1
add ecx, eax
; 20_39 77
mov eax, DWORD PTR 52[esp]
mov ebp, DWORD PTR 60[esp]
xor eax, ebp
mov ebp, DWORD PTR 20[esp]
xor eax, ebp
mov ebp, DWORD PTR 40[esp]
xor eax, ebp
mov ebp, ebx
rol eax, 1
xor ebp, edx
mov DWORD PTR 52[esp],eax
xor ebp, edi
lea eax, DWORD PTR 3395469782[esi*1+eax]
mov esi, ecx
rol esi, 5
ror ebx, 1
add esi, ebp
ror ebx, 1
add eax, esi
; 20_39 78
mov esi, DWORD PTR 56[esp]
mov ebp, DWORD PTR [esp]
xor esi, ebp
mov ebp, DWORD PTR 24[esp]
xor esi, ebp
mov ebp, DWORD PTR 44[esp]
xor esi, ebp
mov ebp, ecx
rol esi, 1
xor ebp, ebx
mov DWORD PTR 56[esp],esi
xor ebp, edx
lea esi, DWORD PTR 3395469782[edi*1+esi]
mov edi, eax
rol edi, 5
ror ecx, 1
add edi, ebp
ror ecx, 1
add esi, edi
; 20_39 79
mov edi, DWORD PTR 60[esp]
mov ebp, DWORD PTR 4[esp]
xor edi, ebp
mov ebp, DWORD PTR 28[esp]
xor edi, ebp
mov ebp, DWORD PTR 48[esp]
xor edi, ebp
mov ebp, eax
rol edi, 1
xor ebp, ecx
mov DWORD PTR 60[esp],edi
xor ebp, ebx
lea edi, DWORD PTR 3395469782[edx*1+edi]
mov edx, esi
rol edx, 5
add edx, ebp
mov ebp, DWORD PTR 128[esp]
ror eax, 1
add edi, edx
ror eax, 1
; End processing
;
mov edx, DWORD PTR 12[ebp]
add edx, ecx
mov ecx, DWORD PTR 4[ebp]
add ecx, esi
mov esi, eax
mov eax, DWORD PTR [ebp]
mov DWORD PTR 12[ebp],edx
add eax, edi
mov edi, DWORD PTR 16[ebp]
add edi, ebx
mov ebx, DWORD PTR 8[ebp]
add ebx, esi
mov DWORD PTR [ebp],eax
mov esi, DWORD PTR 132[esp]
mov DWORD PTR 8[ebp],ebx
add esi, 64
mov eax, DWORD PTR 68[esp]
mov DWORD PTR 16[ebp],edi
cmp esi, eax
mov DWORD PTR 4[ebp],ecx
jl L000start
add esp, 108
pop edi
pop ebx
pop ebp
pop esi
ret
_TEXT SEGMENT
PUBLIC _sha1_block_asm_host_order
_sha1_block_asm_host_order PROC NEAR
mov ecx, DWORD PTR 12[esp]
push esi
shl ecx, 6
mov esi, DWORD PTR 12[esp]
push ebp
add ecx, esi
push ebx
mov ebp, DWORD PTR 16[esp]
push edi
mov edx, DWORD PTR 12[ebp]
sub esp, 108
mov edi, DWORD PTR 16[ebp]
mov ebx, DWORD PTR 8[ebp]
mov DWORD PTR 68[esp],ecx
; First we need to setup the X array
mov eax, DWORD PTR [esi]
mov ecx, DWORD PTR 4[esi]
mov DWORD PTR [esp],eax
mov DWORD PTR 4[esp],ecx
mov eax, DWORD PTR 8[esi]
mov ecx, DWORD PTR 12[esi]
mov DWORD PTR 8[esp],eax
mov DWORD PTR 12[esp],ecx
mov eax, DWORD PTR 16[esi]
mov ecx, DWORD PTR 20[esi]
mov DWORD PTR 16[esp],eax
mov DWORD PTR 20[esp],ecx
mov eax, DWORD PTR 24[esi]
mov ecx, DWORD PTR 28[esi]
mov DWORD PTR 24[esp],eax
mov DWORD PTR 28[esp],ecx
mov eax, DWORD PTR 32[esi]
mov ecx, DWORD PTR 36[esi]
mov DWORD PTR 32[esp],eax
mov DWORD PTR 36[esp],ecx
mov eax, DWORD PTR 40[esi]
mov ecx, DWORD PTR 44[esi]
mov DWORD PTR 40[esp],eax
mov DWORD PTR 44[esp],ecx
mov eax, DWORD PTR 48[esi]
mov ecx, DWORD PTR 52[esi]
mov DWORD PTR 48[esp],eax
mov DWORD PTR 52[esp],ecx
mov eax, DWORD PTR 56[esi]
mov ecx, DWORD PTR 60[esi]
mov DWORD PTR 56[esp],eax
mov DWORD PTR 60[esp],ecx
jmp L001shortcut
_sha1_block_asm_host_order ENDP
_TEXT ENDS
_sha1_block_asm_data_order ENDP
_TEXT ENDS
END