diff options
author | Bob Beck <beck@cvs.openbsd.org> | 2000-04-15 06:18:52 +0000 |
---|---|---|
committer | Bob Beck <beck@cvs.openbsd.org> | 2000-04-15 06:18:52 +0000 |
commit | 8023a8fe50e4963b4fba8c86d9623b97c27ce784 (patch) | |
tree | 970860d25d50d5f71198db33bd8bcfb6cf5a9864 /lib/libcrypto/rc4/asm | |
parent | d6d4194cda8ed05473dc616aad0ba6818e9fa3a5 (diff) |
OpenSSL 0.9.5a merge
Diffstat (limited to 'lib/libcrypto/rc4/asm')
-rw-r--r-- | lib/libcrypto/rc4/asm/r4-win32.asm | 314 |
1 files changed, 0 insertions, 314 deletions
diff --git a/lib/libcrypto/rc4/asm/r4-win32.asm b/lib/libcrypto/rc4/asm/r4-win32.asm index 70b0f7484cd..e69de29bb2d 100644 --- a/lib/libcrypto/rc4/asm/r4-win32.asm +++ b/lib/libcrypto/rc4/asm/r4-win32.asm @@ -1,314 +0,0 @@ - ; Don't even think of reading this code - ; It was automatically generated by rc4-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 rc4-586.asm - .386 -.model FLAT -_TEXT SEGMENT -PUBLIC _RC4 - -_RC4 PROC NEAR - ; - push ebp - push ebx - mov ebp, DWORD PTR 12[esp] - mov ebx, DWORD PTR 16[esp] - push esi - push edi - mov ecx, DWORD PTR [ebp] - mov edx, DWORD PTR 4[ebp] - mov esi, DWORD PTR 28[esp] - inc ecx - sub esp, 12 - add ebp, 8 - and ecx, 255 - lea ebx, DWORD PTR [esi+ebx-8] - mov edi, DWORD PTR 44[esp] - mov DWORD PTR 8[esp],ebx - mov eax, DWORD PTR [ecx*4+ebp] - cmp ebx, esi - jl $L000end -L001start: - add esi, 8 - ; Round 0 - add edx, eax - and edx, 255 - inc ecx - mov ebx, DWORD PTR [edx*4+ebp] - mov DWORD PTR [ecx*4+ebp-4],ebx - add ebx, eax - and ecx, 255 - and ebx, 255 - mov DWORD PTR [edx*4+ebp],eax - nop - mov ebx, DWORD PTR [ebx*4+ebp] - mov eax, DWORD PTR [ecx*4+ebp] - mov BYTE PTR [esp], bl - ; Round 1 - add edx, eax - and edx, 255 - inc ecx - mov ebx, DWORD PTR [edx*4+ebp] - mov DWORD PTR [ecx*4+ebp-4],ebx - add ebx, eax - and ecx, 255 - and ebx, 255 - mov DWORD PTR [edx*4+ebp],eax - nop - mov ebx, DWORD PTR [ebx*4+ebp] - mov eax, DWORD PTR [ecx*4+ebp] - mov BYTE PTR 1[esp],bl - ; Round 2 - add edx, eax - and edx, 255 - inc ecx - mov ebx, DWORD PTR [edx*4+ebp] - mov DWORD PTR [ecx*4+ebp-4],ebx - add ebx, eax - and ecx, 255 - and ebx, 255 - mov DWORD PTR [edx*4+ebp],eax - nop - mov ebx, DWORD PTR [ebx*4+ebp] - mov eax, DWORD PTR [ecx*4+ebp] - mov BYTE PTR 2[esp],bl - ; Round 3 - add edx, eax - and edx, 255 - inc ecx - mov ebx, DWORD PTR [edx*4+ebp] - mov DWORD PTR [ecx*4+ebp-4],ebx - add ebx, eax - and ecx, 255 - and ebx, 255 - mov DWORD PTR [edx*4+ebp],eax - nop - mov ebx, DWORD PTR [ebx*4+ebp] - mov eax, DWORD PTR [ecx*4+ebp] - mov BYTE PTR 3[esp],bl - ; Round 4 - add edx, eax - and edx, 255 - inc ecx - mov ebx, DWORD PTR [edx*4+ebp] - mov DWORD PTR [ecx*4+ebp-4],ebx - add ebx, eax - and ecx, 255 - and ebx, 255 - mov DWORD PTR [edx*4+ebp],eax - nop - mov ebx, DWORD PTR [ebx*4+ebp] - mov eax, DWORD PTR [ecx*4+ebp] - mov BYTE PTR 4[esp],bl - ; Round 5 - add edx, eax - and edx, 255 - inc ecx - mov ebx, DWORD PTR [edx*4+ebp] - mov DWORD PTR [ecx*4+ebp-4],ebx - add ebx, eax - and ecx, 255 - and ebx, 255 - mov DWORD PTR [edx*4+ebp],eax - nop - mov ebx, DWORD PTR [ebx*4+ebp] - mov eax, DWORD PTR [ecx*4+ebp] - mov BYTE PTR 5[esp],bl - ; Round 6 - add edx, eax - and edx, 255 - inc ecx - mov ebx, DWORD PTR [edx*4+ebp] - mov DWORD PTR [ecx*4+ebp-4],ebx - add ebx, eax - and ecx, 255 - and ebx, 255 - mov DWORD PTR [edx*4+ebp],eax - nop - mov ebx, DWORD PTR [ebx*4+ebp] - mov eax, DWORD PTR [ecx*4+ebp] - mov BYTE PTR 6[esp],bl - ; Round 7 - add edx, eax - and edx, 255 - inc ecx - mov ebx, DWORD PTR [edx*4+ebp] - mov DWORD PTR [ecx*4+ebp-4],ebx - add ebx, eax - and ecx, 255 - and ebx, 255 - mov DWORD PTR [edx*4+ebp],eax - nop - mov ebx, DWORD PTR [ebx*4+ebp] - add edi, 8 - mov BYTE PTR 7[esp],bl - ; apply the cipher text - mov eax, DWORD PTR [esp] - mov ebx, DWORD PTR [esi-8] - xor eax, ebx - mov ebx, DWORD PTR [esi-4] - mov DWORD PTR [edi-8],eax - mov eax, DWORD PTR 4[esp] - xor eax, ebx - mov ebx, DWORD PTR 8[esp] - mov DWORD PTR [edi-4],eax - mov eax, DWORD PTR [ecx*4+ebp] - cmp esi, ebx - jle L001start -$L000end: - ; Round 0 - add ebx, 8 - inc esi - cmp ebx, esi - jl $L002finished - mov DWORD PTR 8[esp],ebx - add edx, eax - and edx, 255 - inc ecx - mov ebx, DWORD PTR [edx*4+ebp] - mov DWORD PTR [ecx*4+ebp-4],ebx - add ebx, eax - and ecx, 255 - and ebx, 255 - mov DWORD PTR [edx*4+ebp],eax - nop - mov ebx, DWORD PTR [ebx*4+ebp] - mov eax, DWORD PTR [ecx*4+ebp] - mov bh, BYTE PTR [esi-1] - xor bl, bh - mov BYTE PTR [edi], bl - ; Round 1 - mov ebx, DWORD PTR 8[esp] - cmp ebx, esi - jle $L002finished - inc esi - add edx, eax - and edx, 255 - inc ecx - mov ebx, DWORD PTR [edx*4+ebp] - mov DWORD PTR [ecx*4+ebp-4],ebx - add ebx, eax - and ecx, 255 - and ebx, 255 - mov DWORD PTR [edx*4+ebp],eax - nop - mov ebx, DWORD PTR [ebx*4+ebp] - mov eax, DWORD PTR [ecx*4+ebp] - mov bh, BYTE PTR [esi-1] - xor bl, bh - mov BYTE PTR 1[edi],bl - ; Round 2 - mov ebx, DWORD PTR 8[esp] - cmp ebx, esi - jle $L002finished - inc esi - add edx, eax - and edx, 255 - inc ecx - mov ebx, DWORD PTR [edx*4+ebp] - mov DWORD PTR [ecx*4+ebp-4],ebx - add ebx, eax - and ecx, 255 - and ebx, 255 - mov DWORD PTR [edx*4+ebp],eax - nop - mov ebx, DWORD PTR [ebx*4+ebp] - mov eax, DWORD PTR [ecx*4+ebp] - mov bh, BYTE PTR [esi-1] - xor bl, bh - mov BYTE PTR 2[edi],bl - ; Round 3 - mov ebx, DWORD PTR 8[esp] - cmp ebx, esi - jle $L002finished - inc esi - add edx, eax - and edx, 255 - inc ecx - mov ebx, DWORD PTR [edx*4+ebp] - mov DWORD PTR [ecx*4+ebp-4],ebx - add ebx, eax - and ecx, 255 - and ebx, 255 - mov DWORD PTR [edx*4+ebp],eax - nop - mov ebx, DWORD PTR [ebx*4+ebp] - mov eax, DWORD PTR [ecx*4+ebp] - mov bh, BYTE PTR [esi-1] - xor bl, bh - mov BYTE PTR 3[edi],bl - ; Round 4 - mov ebx, DWORD PTR 8[esp] - cmp ebx, esi - jle $L002finished - inc esi - add edx, eax - and edx, 255 - inc ecx - mov ebx, DWORD PTR [edx*4+ebp] - mov DWORD PTR [ecx*4+ebp-4],ebx - add ebx, eax - and ecx, 255 - and ebx, 255 - mov DWORD PTR [edx*4+ebp],eax - nop - mov ebx, DWORD PTR [ebx*4+ebp] - mov eax, DWORD PTR [ecx*4+ebp] - mov bh, BYTE PTR [esi-1] - xor bl, bh - mov BYTE PTR 4[edi],bl - ; Round 5 - mov ebx, DWORD PTR 8[esp] - cmp ebx, esi - jle $L002finished - inc esi - add edx, eax - and edx, 255 - inc ecx - mov ebx, DWORD PTR [edx*4+ebp] - mov DWORD PTR [ecx*4+ebp-4],ebx - add ebx, eax - and ecx, 255 - and ebx, 255 - mov DWORD PTR [edx*4+ebp],eax - nop - mov ebx, DWORD PTR [ebx*4+ebp] - mov eax, DWORD PTR [ecx*4+ebp] - mov bh, BYTE PTR [esi-1] - xor bl, bh - mov BYTE PTR 5[edi],bl - ; Round 6 - mov ebx, DWORD PTR 8[esp] - cmp ebx, esi - jle $L002finished - inc esi - add edx, eax - and edx, 255 - inc ecx - mov ebx, DWORD PTR [edx*4+ebp] - mov DWORD PTR [ecx*4+ebp-4],ebx - add ebx, eax - and ecx, 255 - and ebx, 255 - mov DWORD PTR [edx*4+ebp],eax - nop - mov ebx, DWORD PTR [ebx*4+ebp] - mov bh, BYTE PTR [esi-1] - xor bl, bh - mov BYTE PTR 6[edi],bl -$L002finished: - dec ecx - add esp, 12 - mov DWORD PTR [ebp-4],edx - mov BYTE PTR [ebp-8],cl - pop edi - pop esi - pop ebx - pop ebp - ret -_RC4 ENDP -_TEXT ENDS -END |