summaryrefslogtreecommitdiffstats
path: root/fips/des/asm/fips-dx86-elf.s
diff options
context:
space:
mode:
Diffstat (limited to 'fips/des/asm/fips-dx86-elf.s')
-rw-r--r--fips/des/asm/fips-dx86-elf.s2697
1 files changed, 2697 insertions, 0 deletions
diff --git a/fips/des/asm/fips-dx86-elf.s b/fips/des/asm/fips-dx86-elf.s
new file mode 100644
index 0000000000..c9939221e4
--- /dev/null
+++ b/fips/des/asm/fips-dx86-elf.s
@@ -0,0 +1,2697 @@
+
+
+
+
+
+
+ .file "des-586.s"
+ .version "01.01"
+gcc2_compiled.:
+.text
+ .align 16
+.globl DES_encrypt1
+ .type DES_encrypt1,@function
+DES_encrypt1:
+ pushl %esi
+ pushl %edi
+
+
+ movl 12(%esp), %esi
+ xorl %ecx, %ecx
+ pushl %ebx
+ pushl %ebp
+ movl (%esi), %eax
+ movl 28(%esp), %ebx
+ movl 4(%esi), %edi
+
+
+ roll $4, %eax
+ movl %eax, %esi
+ xorl %edi, %eax
+ andl $0xf0f0f0f0, %eax
+ xorl %eax, %esi
+ xorl %eax, %edi
+
+ roll $20, %edi
+ movl %edi, %eax
+ xorl %esi, %edi
+ andl $0xfff0000f, %edi
+ xorl %edi, %eax
+ xorl %edi, %esi
+
+ roll $14, %eax
+ movl %eax, %edi
+ xorl %esi, %eax
+ andl $0x33333333, %eax
+ xorl %eax, %edi
+ xorl %eax, %esi
+
+ roll $22, %esi
+ movl %esi, %eax
+ xorl %edi, %esi
+ andl $0x03fc03fc, %esi
+ xorl %esi, %eax
+ xorl %esi, %edi
+
+ roll $9, %eax
+ movl %eax, %esi
+ xorl %edi, %eax
+ andl $0xaaaaaaaa, %eax
+ xorl %eax, %esi
+ xorl %eax, %edi
+
+.byte 209
+.byte 199
+ leal DES_SPtrans, %ebp
+ movl 24(%esp), %ecx
+ cmpl $0, %ebx
+ je .L000start_decrypt
+
+
+ movl (%ecx), %eax
+ xorl %ebx, %ebx
+ movl 4(%ecx), %edx
+ xorl %esi, %eax
+ xorl %ecx, %ecx
+ xorl %esi, %edx
+ andl $0xfcfcfcfc, %eax
+ andl $0xcfcfcfcf, %edx
+ movb %al, %bl
+ movb %ah, %cl
+ rorl $4, %edx
+ xorl (%ebp,%ebx),%edi
+ movb %dl, %bl
+ xorl 0x200(%ebp,%ecx),%edi
+ movb %dh, %cl
+ shrl $16, %eax
+ xorl 0x100(%ebp,%ebx),%edi
+ movb %ah, %bl
+ shrl $16, %edx
+ xorl 0x300(%ebp,%ecx),%edi
+ movb %dh, %cl
+ andl $0xff, %eax
+ andl $0xff, %edx
+ xorl 0x600(%ebp,%ebx),%edi
+ xorl 0x700(%ebp,%ecx),%edi
+ movl 24(%esp), %ecx
+ xorl 0x400(%ebp,%eax),%edi
+ xorl 0x500(%ebp,%edx),%edi
+
+
+ movl 8(%ecx), %eax
+ xorl %ebx, %ebx
+ movl 12(%ecx), %edx
+ xorl %edi, %eax
+ xorl %ecx, %ecx
+ xorl %edi, %edx
+ andl $0xfcfcfcfc, %eax
+ andl $0xcfcfcfcf, %edx
+ movb %al, %bl
+ movb %ah, %cl
+ rorl $4, %edx
+ xorl (%ebp,%ebx),%esi
+ movb %dl, %bl
+ xorl 0x200(%ebp,%ecx),%esi
+ movb %dh, %cl
+ shrl $16, %eax
+ xorl 0x100(%ebp,%ebx),%esi
+ movb %ah, %bl
+ shrl $16, %edx
+ xorl 0x300(%ebp,%ecx),%esi
+ movb %dh, %cl
+ andl $0xff, %eax
+ andl $0xff, %edx
+ xorl 0x600(%ebp,%ebx),%esi
+ xorl 0x700(%ebp,%ecx),%esi
+ movl 24(%esp), %ecx
+ xorl 0x400(%ebp,%eax),%esi
+ xorl 0x500(%ebp,%edx),%esi
+
+
+ movl 16(%ecx), %eax
+ xorl %ebx, %ebx
+ movl 20(%ecx), %edx
+ xorl %esi, %eax
+ xorl %ecx, %ecx
+ xorl %esi, %edx
+ andl $0xfcfcfcfc, %eax
+ andl $0xcfcfcfcf, %edx
+ movb %al, %bl
+ movb %ah, %cl
+ rorl $4, %edx
+ xorl (%ebp,%ebx),%edi
+ movb %dl, %bl
+ xorl 0x200(%ebp,%ecx),%edi
+ movb %dh, %cl
+ shrl $16, %eax
+ xorl 0x100(%ebp,%ebx),%edi
+ movb %ah, %bl
+ shrl $16, %edx
+ xorl 0x300(%ebp,%ecx),%edi
+ movb %dh, %cl
+ andl $0xff, %eax
+ andl $0xff, %edx
+ xorl 0x600(%ebp,%ebx),%edi
+ xorl 0x700(%ebp,%ecx),%edi
+ movl 24(%esp), %ecx
+ xorl 0x400(%ebp,%eax),%edi
+ xorl 0x500(%ebp,%edx),%edi
+
+
+ movl 24(%ecx), %eax
+ xorl %ebx, %ebx
+ movl 28(%ecx), %edx
+ xorl %edi, %eax
+ xorl %ecx, %ecx
+ xorl %edi, %edx
+ andl $0xfcfcfcfc, %eax
+ andl $0xcfcfcfcf, %edx
+ movb %al, %bl
+ movb %ah, %cl
+ rorl $4, %edx
+ xorl (%ebp,%ebx),%esi
+ movb %dl, %bl
+ xorl 0x200(%ebp,%ecx),%esi
+ movb %dh, %cl
+ shrl $16, %eax
+ xorl 0x100(%ebp,%ebx),%esi
+ movb %ah, %bl
+ shrl $16, %edx
+ xorl 0x300(%ebp,%ecx),%esi
+ movb %dh, %cl
+ andl $0xff, %eax
+ andl $0xff, %edx
+ xorl 0x600(%ebp,%ebx),%esi
+ xorl 0x700(%ebp,%ecx),%esi
+ movl 24(%esp), %ecx
+ xorl 0x400(%ebp,%eax),%esi
+ xorl 0x500(%ebp,%edx),%esi
+
+
+ movl 32(%ecx), %eax
+ xorl %ebx, %ebx
+ movl 36(%ecx), %edx
+ xorl %esi, %eax
+ xorl %ecx, %ecx
+ xorl %esi, %edx
+ andl $0xfcfcfcfc, %eax
+ andl $0xcfcfcfcf, %edx
+ movb %al, %bl
+ movb %ah, %cl
+ rorl $4, %edx
+ xorl (%ebp,%ebx),%edi
+ movb %dl, %bl
+ xorl 0x200(%ebp,%ecx),%edi
+ movb %dh, %cl
+ shrl $16, %eax
+ xorl 0x100(%ebp,%ebx),%edi
+ movb %ah, %bl
+ shrl $16, %edx
+ xorl 0x300(%ebp,%ecx),%edi
+ movb %dh, %cl
+ andl $0xff, %eax
+ andl $0xff, %edx
+ xorl 0x600(%ebp,%ebx),%edi
+ xorl 0x700(%ebp,%ecx),%edi
+ movl 24(%esp), %ecx
+ xorl 0x400(%ebp,%eax),%edi
+ xorl 0x500(%ebp,%edx),%edi
+
+
+ movl 40(%ecx), %eax
+ xorl %ebx, %ebx
+ movl 44(%ecx), %edx
+ xorl %edi, %eax
+ xorl %ecx, %ecx
+ xorl %edi, %edx
+ andl $0xfcfcfcfc, %eax
+ andl $0xcfcfcfcf, %edx
+ movb %al, %bl
+ movb %ah, %cl
+ rorl $4, %edx
+ xorl (%ebp,%ebx),%esi
+ movb %dl, %bl
+ xorl 0x200(%ebp,%ecx),%esi
+ movb %dh, %cl
+ shrl $16, %eax
+ xorl 0x100(%ebp,%ebx),%esi
+ movb %ah, %bl
+ shrl $16, %edx
+ xorl 0x300(%ebp,%ecx),%esi
+ movb %dh, %cl
+ andl $0xff, %eax
+ andl $0xff, %edx
+ xorl 0x600(%ebp,%ebx),%esi
+ xorl 0x700(%ebp,%ecx),%esi
+ movl 24(%esp), %ecx
+ xorl 0x400(%ebp,%eax),%esi
+ xorl 0x500(%ebp,%edx),%esi
+
+
+ movl 48(%ecx), %eax
+ xorl %ebx, %ebx
+ movl 52(%ecx), %edx
+ xorl %esi, %eax
+ xorl %ecx, %ecx
+ xorl %esi, %edx
+ andl $0xfcfcfcfc, %eax
+ andl $0xcfcfcfcf, %edx
+ movb %al, %bl
+ movb %ah, %cl
+ rorl $4, %edx
+ xorl (%ebp,%ebx),%edi
+ movb %dl, %bl
+ xorl 0x200(%ebp,%ecx),%edi
+ movb %dh, %cl
+ shrl $16, %eax
+ xorl 0x100(%ebp,%ebx),%edi
+ movb %ah, %bl
+ shrl $16, %edx
+ xorl 0x300(%ebp,%ecx),%edi
+ movb %dh, %cl
+ andl $0xff, %eax
+ andl $0xff, %edx
+ xorl 0x600(%ebp,%ebx),%edi
+ xorl 0x700(%ebp,%ecx),%edi
+ movl 24(%esp), %ecx
+ xorl 0x400(%ebp,%eax),%edi
+ xorl 0x500(%ebp,%edx),%edi
+
+
+ movl 56(%ecx), %eax
+ xorl %ebx, %ebx
+ movl 60(%ecx), %edx
+ xorl %edi, %eax
+ xorl %ecx, %ecx
+ xorl %edi, %edx
+ andl $0xfcfcfcfc, %eax
+ andl $0xcfcfcfcf, %edx
+ movb %al, %bl
+ movb %ah, %cl
+ rorl $4, %edx
+ xorl (%ebp,%ebx),%esi
+ movb %dl, %bl
+ xorl 0x200(%ebp,%ecx),%esi
+ movb %dh, %cl
+ shrl $16, %eax
+ xorl 0x100(%ebp,%ebx),%esi
+ movb %ah, %bl
+ shrl $16, %edx
+ xorl 0x300(%ebp,%ecx),%esi
+ movb %dh, %cl
+ andl $0xff, %eax
+ andl $0xff, %edx
+ xorl 0x600(%ebp,%ebx),%esi
+ xorl 0x700(%ebp,%ecx),%esi
+ movl 24(%esp), %ecx
+ xorl 0x400(%ebp,%eax),%esi
+ xorl 0x500(%ebp,%edx),%esi
+
+
+ movl 64(%ecx), %eax
+ xorl %ebx, %ebx
+ movl 68(%ecx), %edx
+ xorl %esi, %eax
+ xorl %ecx, %ecx
+ xorl %esi, %edx
+ andl $0xfcfcfcfc, %eax
+ andl $0xcfcfcfcf, %edx
+ movb %al, %bl
+ movb %ah, %cl
+ rorl $4, %edx
+ xorl (%ebp,%ebx),%edi
+ movb %dl, %bl
+ xorl 0x200(%ebp,%ecx),%edi
+ movb %dh, %cl
+ shrl $16, %eax
+ xorl 0x100(%ebp,%ebx),%edi
+ movb %ah, %bl
+ shrl $16, %edx
+ xorl 0x300(%ebp,%ecx),%edi
+ movb %dh, %cl
+ andl $0xff, %eax
+ andl $0xff, %edx
+ xorl 0x600(%ebp,%ebx),%edi
+ xorl 0x700(%ebp,%ecx),%edi
+ movl 24(%esp), %ecx
+ xorl 0x400(%ebp,%eax),%edi
+ xorl 0x500(%ebp,%edx),%edi
+
+
+ movl 72(%ecx), %eax
+ xorl %ebx, %ebx
+ movl 76(%ecx), %edx
+ xorl %edi, %eax
+ xorl %ecx, %ecx
+ xorl %edi, %edx
+ andl $0xfcfcfcfc, %eax
+ andl $0xcfcfcfcf, %edx
+ movb %al, %bl
+ movb %ah, %cl
+ rorl $4, %edx
+ xorl (%ebp,%ebx),%esi
+ movb %dl, %bl
+ xorl 0x200(%ebp,%ecx),%esi
+ movb %dh, %cl
+ shrl $16, %eax
+ xorl 0x100(%ebp,%ebx),%esi
+ movb %ah, %bl
+ shrl $16, %edx
+ xorl 0x300(%ebp,%ecx),%esi
+ movb %dh, %cl
+ andl $0xff, %eax
+ andl $0xff, %edx
+ xorl 0x600(%ebp,%ebx),%esi
+ xorl 0x700(%ebp,%ecx),%esi
+ movl 24(%esp), %ecx
+ xorl 0x400(%ebp,%eax),%esi
+ xorl 0x500(%ebp,%edx),%esi
+
+
+ movl 80(%ecx), %eax
+ xorl %ebx, %ebx
+ movl 84(%ecx), %edx
+ xorl %esi, %eax
+ xorl %ecx, %ecx
+ xorl %esi, %edx
+ andl $0xfcfcfcfc, %eax
+ andl $0xcfcfcfcf, %edx
+ movb %al, %bl
+ movb %ah, %cl
+ rorl $4, %edx
+ xorl (%ebp,%ebx),%edi
+ movb %dl, %bl
+ xorl 0x200(%ebp,%ecx),%edi
+ movb %dh, %cl
+ shrl $16, %eax
+ xorl 0x100(%ebp,%ebx),%edi
+ movb %ah, %bl
+ shrl $16, %edx
+ xorl 0x300(%ebp,%ecx),%edi
+ movb %dh, %cl
+ andl $0xff, %eax
+ andl $0xff, %edx
+ xorl 0x600(%ebp,%ebx),%edi
+ xorl 0x700(%ebp,%ecx),%edi
+ movl 24(%esp), %ecx
+ xorl 0x400(%ebp,%eax),%edi
+ xorl 0x500(%ebp,%edx),%edi
+
+
+ movl 88(%ecx), %eax
+ xorl %ebx, %ebx
+ movl 92(%ecx), %edx
+ xorl %edi, %eax
+ xorl %ecx, %ecx
+ xorl %edi, %edx
+ andl $0xfcfcfcfc, %eax
+ andl $0xcfcfcfcf, %edx
+ movb %al, %bl
+ movb %ah, %cl
+ rorl $4, %edx
+ xorl (%ebp,%ebx),%esi
+ movb %dl, %bl
+ xorl 0x200(%ebp,%ecx),%esi
+ movb %dh, %cl
+ shrl $16, %eax
+ xorl 0x100(%ebp,%ebx),%esi
+ movb %ah, %bl
+ shrl $16, %edx
+ xorl 0x300(%ebp,%ecx),%esi
+ movb %dh, %cl
+ andl $0xff, %eax
+ andl $0xff, %edx
+ xorl 0x600(%ebp,%ebx),%esi
+ xorl 0x700(%ebp,%ecx),%esi
+ movl 24(%esp), %ecx
+ xorl 0x400(%ebp,%eax),%esi
+ xorl 0x500(%ebp,%edx),%esi
+
+
+ movl 96(%ecx), %eax
+ xorl %ebx, %ebx
+ movl 100(%ecx), %edx
+ xorl %esi, %eax
+ xorl %ecx, %ecx
+ xorl %esi, %edx
+ andl $0xfcfcfcfc, %eax
+ andl $0xcfcfcfcf, %edx
+ movb %al, %bl
+ movb %ah, %cl
+ rorl $4, %edx
+ xorl (%ebp,%ebx),%edi
+ movb %dl, %bl
+ xorl 0x200(%ebp,%ecx),%edi
+ movb %dh, %cl
+ shrl $16, %eax
+ xorl 0x100(%ebp,%ebx),%edi
+ movb %ah, %bl
+ shrl $16, %edx
+ xorl 0x300(%ebp,%ecx),%edi
+ movb %dh, %cl
+ andl $0xff, %eax
+ andl $0xff, %edx
+ xorl 0x600(%ebp,%ebx),%edi
+ xorl 0x700(%ebp,%ecx),%edi
+ movl 24(%esp), %ecx
+ xorl 0x400(%ebp,%eax),%edi
+ xorl 0x500(%ebp,%edx),%edi
+
+
+ movl 104(%ecx), %eax
+ xorl %ebx, %ebx
+ movl 108(%ecx), %edx
+ xorl %edi, %eax
+ xorl %ecx, %ecx
+ xorl %edi, %edx
+ andl $0xfcfcfcfc, %eax
+ andl $0xcfcfcfcf, %edx
+ movb %al, %bl
+ movb %ah, %cl
+ rorl $4, %edx
+ xorl (%ebp,%ebx),%esi
+ movb %dl, %bl
+ xorl 0x200(%ebp,%ecx),%esi
+ movb %dh, %cl
+ shrl $16, %eax
+ xorl 0x100(%ebp,%ebx),%esi
+ movb %ah, %bl
+ shrl $16, %edx
+ xorl 0x300(%ebp,%ecx),%esi
+ movb %dh, %cl
+ andl $0xff, %eax
+ andl $0xff, %edx
+ xorl 0x600(%ebp,%ebx),%esi
+ xorl 0x700(%ebp,%ecx),%esi
+ movl 24(%esp), %ecx
+ xorl 0x400(%ebp,%eax),%esi
+ xorl 0x500(%ebp,%edx),%esi
+
+
+ movl 112(%ecx), %eax
+ xorl %ebx, %ebx
+ movl 116(%ecx), %edx
+ xorl %esi, %eax
+ xorl %ecx, %ecx
+ xorl %esi, %edx
+ andl $0xfcfcfcfc, %eax
+ andl $0xcfcfcfcf, %edx
+ movb %al, %bl
+ movb %ah, %cl
+ rorl $4, %edx
+ xorl (%ebp,%ebx),%edi
+ movb %dl, %bl
+ xorl 0x200(%ebp,%ecx),%edi
+ movb %dh, %cl
+ shrl $16, %eax
+ xorl 0x100(%ebp,%ebx),%edi
+ movb %ah, %bl
+ shrl $16, %edx
+ xorl 0x300(%ebp,%ecx),%edi
+ movb %dh, %cl
+ andl $0xff, %eax
+ andl $0xff, %edx
+ xorl 0x600(%ebp,%ebx),%edi
+ xorl 0x700(%ebp,%ecx),%edi
+ movl 24(%esp), %ecx
+ xorl 0x400(%ebp,%eax),%edi
+ xorl 0x500(%ebp,%edx),%edi
+
+
+ movl 120(%ecx), %eax
+ xorl %ebx, %ebx
+ movl 124(%ecx), %edx
+ xorl %edi, %eax
+ xorl %ecx, %ecx
+ xorl %edi, %edx
+ andl $0xfcfcfcfc, %eax
+ andl $0xcfcfcfcf, %edx
+ movb %al, %bl
+ movb %ah, %cl
+ rorl $4, %edx
+ xorl (%ebp,%ebx),%esi
+ movb %dl, %bl
+ xorl 0x200(%ebp,%ecx),%esi
+ movb %dh, %cl
+ shrl $16, %eax
+ xorl 0x100(%ebp,%ebx),%esi
+ movb %ah, %bl
+ shrl $16, %edx
+ xorl 0x300(%ebp,%ecx),%esi
+ movb %dh, %cl
+ andl $0xff, %eax
+ andl $0xff, %edx
+ xorl 0x600(%ebp,%ebx),%esi
+ xorl 0x700(%ebp,%ecx),%esi
+ movl 24(%esp), %ecx
+ xorl 0x400(%ebp,%eax),%esi
+ xorl 0x500(%ebp,%edx),%esi
+ jmp .L001end
+.L000start_decrypt:
+
+
+ movl 120(%ecx), %eax
+ xorl %ebx, %ebx
+ movl 124(%ecx), %edx
+ xorl %esi, %eax
+ xorl %ecx, %ecx
+ xorl %esi, %edx
+ andl $0xfcfcfcfc, %eax
+ andl $0xcfcfcfcf, %edx
+ movb %al, %bl
+ movb %ah, %cl
+ rorl $4, %edx
+ xorl (%ebp,%ebx),%edi
+ movb %dl, %bl
+ xorl 0x200(%ebp,%ecx),%edi
+ movb %dh, %cl
+ shrl $16, %eax
+ xorl 0x100(%ebp,%ebx),%edi
+ movb %ah, %bl
+ shrl $16, %edx
+ xorl 0x300(%ebp,%ecx),%edi
+ movb %dh, %cl
+ andl $0xff, %eax
+ andl $0xff, %edx
+ xorl 0x600(%ebp,%ebx),%edi
+ xorl 0x700(%ebp,%ecx),%edi
+ movl 24(%esp), %ecx
+ xorl 0x400(%ebp,%eax),%edi
+ xorl 0x500(%ebp,%edx),%edi
+
+
+ movl 112(%ecx), %eax
+ xorl %ebx, %ebx
+ movl 116(%ecx), %edx
+ xorl %edi, %eax
+ xorl %ecx, %ecx
+ xorl %edi, %edx
+ andl $0xfcfcfcfc, %eax
+ andl $0xcfcfcfcf, %edx
+ movb %al, %bl
+ movb %ah, %cl
+ rorl $4, %edx
+ xorl (%ebp,%ebx),%esi
+ movb %dl, %bl
+ xorl 0x200(%ebp,%ecx),%esi
+ movb %dh, %cl
+ shrl $16, %eax
+ xorl 0x100(%ebp,%ebx),%esi
+ movb %ah, %bl
+ shrl $16, %edx
+ xorl 0x300(%ebp,%ecx),%esi
+ movb %dh, %cl
+ andl $0xff, %eax
+ andl $0xff, %edx
+ xorl 0x600(%ebp,%ebx),%esi
+ xorl 0x700(%ebp,%ecx),%esi
+ movl 24(%esp), %ecx
+ xorl 0x400(%ebp,%eax),%esi
+ xorl 0x500(%ebp,%edx),%esi
+
+
+ movl 104(%ecx), %eax
+ xorl %ebx, %ebx
+ movl 108(%ecx), %edx
+ xorl %esi, %eax
+ xorl %ecx, %ecx
+ xorl %esi, %edx
+ andl $0xfcfcfcfc, %eax
+ andl $0xcfcfcfcf, %edx
+ movb %al, %bl
+ movb %ah, %cl
+ rorl $4, %edx
+ xorl (%ebp,%ebx),%edi
+ movb %dl, %bl
+ xorl 0x200(%ebp,%ecx),%edi
+ movb %dh, %cl
+ shrl $16, %eax
+ xorl 0x100(%ebp,%ebx),%edi
+ movb %ah, %bl
+ shrl $16, %edx
+ xorl 0x300(%ebp,%ecx),%edi
+ movb %dh, %cl
+ andl $0xff, %eax
+ andl $0xff, %edx
+ xorl 0x600(%ebp,%ebx),%edi
+ xorl 0x700(%ebp,%ecx),%edi
+ movl 24(%esp), %ecx
+ xorl 0x400(%ebp,%eax),%edi
+ xorl 0x500(%ebp,%edx),%edi
+
+
+ movl 96(%ecx), %eax
+ xorl %ebx, %ebx
+ movl 100(%ecx), %edx
+ xorl %edi, %eax
+ xorl %ecx, %ecx
+ xorl %edi, %edx
+ andl $0xfcfcfcfc, %eax
+ andl $0xcfcfcfcf, %edx
+ movb %al, %bl
+ movb %ah, %cl
+ rorl $4, %edx
+ xorl (%ebp,%ebx),%esi
+ movb %dl, %bl
+ xorl 0x200(%ebp,%ecx),%esi
+ movb %dh, %cl
+ shrl $16, %eax
+ xorl 0x100(%ebp,%ebx),%esi
+ movb %ah, %bl
+ shrl $16, %edx
+ xorl 0x300(%ebp,%ecx),%esi
+ movb %dh, %cl
+ andl $0xff, %eax
+ andl $0xff, %edx
+ xorl 0x600(%ebp,%ebx),%esi
+ xorl 0x700(%ebp,%ecx),%esi
+ movl 24(%esp), %ecx
+ xorl 0x400(%ebp,%eax),%esi
+ xorl 0x500(%ebp,%edx),%esi
+
+
+ movl 88(%ecx), %eax
+ xorl %ebx, %ebx
+ movl 92(%ecx), %edx
+ xorl %esi, %eax
+ xorl %ecx, %ecx
+ xorl %esi, %edx
+ andl $0xfcfcfcfc, %eax
+ andl $0xcfcfcfcf, %edx
+ movb %al, %bl
+ movb %ah, %cl
+ rorl $4, %edx
+ xorl (%ebp,%ebx),%edi
+ movb %dl, %bl
+ xorl 0x200(%ebp,%ecx),%edi
+ movb %dh, %cl
+ shrl $16, %eax
+ xorl 0x100(%ebp,%ebx),%edi
+ movb %ah, %bl
+ shrl $16, %edx
+ xorl 0x300(%ebp,%ecx),%edi
+ movb %dh, %cl
+ andl $0xff, %eax
+ andl $0xff, %edx
+ xorl 0x600(%ebp,%ebx),%edi
+ xorl 0x700(%ebp,%ecx),%edi
+ movl 24(%esp), %ecx
+ xorl 0x400(%ebp,%eax),%edi
+ xorl 0x500(%ebp,%edx),%edi
+
+
+ movl 80(%ecx), %eax
+ xorl %ebx, %ebx
+ movl 84(%ecx), %edx
+ xorl %edi, %eax
+ xorl %ecx, %ecx
+ xorl %edi, %edx
+ andl $0xfcfcfcfc, %eax
+ andl $0xcfcfcfcf, %edx
+ movb %al, %bl
+ movb %ah, %cl
+ rorl $4, %edx
+ xorl (%ebp,%ebx),%esi
+ movb %dl, %bl
+ xorl 0x200(%ebp,%ecx),%esi
+ movb %dh, %cl
+ shrl $16, %eax
+ xorl 0x100(%ebp,%ebx),%esi
+ movb %ah, %bl
+ shrl $16, %edx
+ xorl 0x300(%ebp,%ecx),%esi
+ movb %dh, %cl
+ andl $0xff, %eax
+ andl $0xff, %edx
+ xorl 0x600(%ebp,%ebx),%esi
+ xorl 0x700(%ebp,%ecx),%esi
+ movl 24(%esp), %ecx
+ xorl 0x400(%ebp,%eax),%esi
+ xorl 0x500(%ebp,%edx),%esi
+
+
+ movl 72(%ecx), %eax
+ xorl %ebx, %ebx
+ movl 76(%ecx), %edx
+ xorl %esi, %eax
+ xorl %ecx, %ecx
+ xorl %esi, %edx
+ andl $0xfcfcfcfc, %eax
+ andl $0xcfcfcfcf, %edx
+ movb %al, %bl
+ movb %ah, %cl
+ rorl $4, %edx
+ xorl (%ebp,%ebx),%edi
+ movb %dl, %bl
+ xorl 0x200(%ebp,%ecx),%edi
+ movb %dh, %cl
+ shrl $16, %eax
+ xorl 0x100(%ebp,%ebx),%edi
+ movb %ah, %bl
+ shrl $16, %edx
+ xorl 0x300(%ebp,%ecx),%edi
+ movb %dh, %cl
+ andl $0xff, %eax
+ andl $0xff, %edx
+ xorl 0x600(%ebp,%ebx),%edi
+ xorl 0x700(%ebp,%ecx),%edi
+ movl 24(%esp), %ecx
+ xorl 0x400(%ebp,%eax),%edi
+ xorl 0x500(%ebp,%edx),%edi
+
+
+ movl 64(%ecx), %eax
+ xorl %ebx, %ebx
+ movl 68(%ecx), %edx
+ xorl %edi, %eax
+ xorl %ecx, %ecx
+ xorl %edi, %edx
+ andl $0xfcfcfcfc, %eax
+ andl $0xcfcfcfcf, %edx
+ movb %al, %bl
+ movb %ah, %cl
+ rorl $4, %edx
+ xorl (%ebp,%ebx),%esi
+ movb %dl, %bl
+ xorl 0x200(%ebp,%ecx),%esi
+ movb %dh, %cl
+ shrl $16, %eax
+ xorl 0x100(%ebp,%ebx),%esi
+ movb %ah, %bl
+ shrl $16, %edx
+ xorl 0x300(%ebp,%ecx),%esi
+ movb %dh, %cl
+ andl $0xff, %eax
+ andl $0xff, %edx
+ xorl 0x600(%ebp,%ebx),%esi
+ xorl 0x700(%ebp,%ecx),%esi
+ movl 24(%esp), %ecx
+ xorl 0x400(%ebp,%eax),%esi
+ xorl 0x500(%ebp,%edx),%esi
+
+
+ movl 56(%ecx), %eax
+ xorl %ebx, %ebx
+ movl 60(%ecx), %edx
+ xorl %esi, %eax
+ xorl %ecx, %ecx
+ xorl %esi, %edx
+ andl $0xfcfcfcfc, %eax
+ andl $0xcfcfcfcf, %edx
+ movb %al, %bl
+ movb %ah, %cl
+ rorl $4, %edx
+ xorl (%ebp,%ebx),%edi
+ movb %dl, %bl
+ xorl 0x200(%ebp,%ecx),%edi
+ movb %dh, %cl
+ shrl $16, %eax
+ xorl 0x100(%ebp,%ebx),%edi
+ movb %ah, %bl
+ shrl $16, %edx
+ xorl 0x300(%ebp,%ecx),%edi
+ movb %dh, %cl
+ andl $0xff, %eax
+ andl $0xff, %edx
+ xorl 0x600(%ebp,%ebx),%edi
+ xorl 0x700(%ebp,%ecx),%edi
+ movl 24(%esp), %ecx
+ xorl 0x400(%ebp,%eax),%edi
+ xorl 0x500(%ebp,%edx),%edi
+
+
+ movl 48(%ecx), %eax
+ xorl %ebx, %ebx
+ movl 52(%ecx), %edx
+ xorl %edi, %eax
+ xorl %ecx, %ecx
+ xorl %edi, %edx
+ andl $0xfcfcfcfc, %eax
+ andl $0xcfcfcfcf, %edx
+ movb %al, %bl
+ movb %ah, %cl
+ rorl $4, %edx
+ xorl (%ebp,%ebx),%esi
+ movb %dl, %bl
+ xorl 0x200(%ebp,%ecx),%esi
+ movb %dh, %cl
+ shrl $16, %eax
+ xorl 0x100(%ebp,%ebx),%esi
+ movb %ah, %bl
+ shrl $16, %edx
+ xorl 0x300(%ebp,%ecx),%esi
+ movb %dh, %cl
+ andl $0xff, %eax
+ andl $0xff, %edx
+ xorl 0x600(%ebp,%ebx),%esi
+ xorl 0x700(%ebp,%ecx),%esi
+ movl 24(%esp), %ecx
+ xorl 0x400(%ebp,%eax),%esi
+ xorl 0x500(%ebp,%edx),%esi
+
+
+ movl 40(%ecx), %eax
+ xorl %ebx, %ebx
+ movl 44(%ecx), %edx
+ xorl %esi, %eax
+ xorl %ecx, %ecx
+ xorl %esi, %edx
+ andl $0xfcfcfcfc, %eax
+ andl $0xcfcfcfcf, %edx
+ movb %al, %bl
+ movb %ah, %cl
+ rorl $4, %edx
+ xorl (%ebp,%ebx),%edi
+ movb %dl, %bl
+ xorl 0x200(%ebp,%ecx),%edi
+ movb %dh, %cl
+ shrl $16, %eax
+ xorl 0x100(%ebp,%ebx),%edi
+ movb %ah, %bl
+ shrl $16, %edx
+ xorl 0x300(%ebp,%ecx),%edi
+ movb %dh, %cl
+ andl $0xff, %eax
+ andl $0xff, %edx
+ xorl 0x600(%ebp,%ebx),%edi
+ xorl 0x700(%ebp,%ecx),%edi
+ movl 24(%esp), %ecx
+ xorl 0x400(%ebp,%eax),%edi
+ xorl 0x500(%ebp,%edx),%edi
+
+
+ movl 32(%ecx), %eax
+ xorl %ebx, %ebx
+ movl 36(%ecx), %edx
+ xorl %edi, %eax
+ xorl %ecx, %ecx
+ xorl %edi, %edx
+ andl $0xfcfcfcfc, %eax
+ andl $0xcfcfcfcf, %edx
+ movb %al, %bl
+ movb %ah, %cl
+ rorl $4, %edx
+ xorl (%ebp,%ebx),%esi
+ movb %dl, %bl
+ xorl 0x200(%ebp,%ecx),%esi
+ movb %dh, %cl
+ shrl $16, %eax
+ xorl 0x100(%ebp,%ebx),%esi
+ movb %ah, %bl
+ shrl $16, %edx
+ xorl 0x300(%ebp,%ecx),%esi
+ movb %dh, %cl
+ andl $0xff, %eax
+ andl $0xff, %edx
+ xorl 0x600(%ebp,%ebx),%esi
+ xorl 0x700(%ebp,%ecx),%esi
+ movl 24(%esp), %ecx
+ xorl 0x400(%ebp,%eax),%esi
+ xorl 0x500(%ebp,%edx),%esi
+
+
+ movl 24(%ecx), %eax
+ xorl %ebx, %ebx
+ movl 28(%ecx), %edx
+ xorl %esi, %eax
+ xorl %ecx, %ecx
+ xorl %esi, %edx
+ andl $0xfcfcfcfc, %eax
+ andl $0xcfcfcfcf, %edx
+ movb %al, %bl
+ movb %ah, %cl
+ rorl $4, %edx
+ xorl (%ebp,%ebx),%edi
+ movb %dl, %bl
+ xorl 0x200(%ebp,%ecx),%edi
+ movb %dh, %cl
+ shrl $16, %eax
+ xorl 0x100(%ebp,%ebx),%edi
+ movb %ah, %bl
+ shrl $16, %edx
+ xorl 0x300(%ebp,%ecx),%edi
+ movb %dh, %cl
+ andl $0xff, %eax
+ andl $0xff, %edx
+ xorl 0x600(%ebp,%ebx),%edi
+ xorl 0x700(%ebp,%ecx),%edi
+ movl 24(%esp), %ecx
+ xorl 0x400(%ebp,%eax),%edi
+ xorl 0x500(%ebp,%edx),%edi
+
+
+ movl 16(%ecx), %eax
+ xorl %ebx, %ebx
+ movl 20(%ecx), %edx
+ xorl %edi, %eax
+ xorl %ecx, %ecx
+ xorl %edi, %edx
+ andl $0xfcfcfcfc, %eax
+ andl $0xcfcfcfcf, %edx
+ movb %al, %bl
+ movb %ah, %cl
+ rorl $4, %edx
+ xorl (%ebp,%ebx),%esi
+ movb %dl, %bl
+ xorl 0x200(%ebp,%ecx),%esi
+ movb %dh, %cl
+ shrl $16, %eax
+ xorl 0x100(%ebp,%ebx),%esi
+ movb %ah, %bl
+ shrl $16, %edx
+ xorl 0x300(%ebp,%ecx),%esi
+ movb %dh, %cl
+ andl $0xff, %eax
+ andl $0xff, %edx
+ xorl 0x600(%ebp,%ebx),%esi
+ xorl 0x700(%ebp,%ecx),%esi
+ movl 24(%esp), %ecx
+ xorl 0x400(%ebp,%eax),%esi
+ xorl 0x500(%ebp,%edx),%esi
+
+
+ movl 8(%ecx), %eax
+ xorl %ebx, %ebx
+ movl 12(%ecx), %edx
+ xorl %esi, %eax
+ xorl %ecx, %ecx
+ xorl %esi, %edx
+ andl $0xfcfcfcfc, %eax
+ andl $0xcfcfcfcf, %edx
+ movb %al, %bl
+ movb %ah, %cl
+ rorl $4, %edx
+ xorl (%ebp,%ebx),%edi
+ movb %dl, %bl
+ xorl 0x200(%ebp,%ecx),%edi
+ movb %dh, %cl
+ shrl $16, %eax
+ xorl 0x100(%ebp,%ebx),%edi
+ movb %ah, %bl
+ shrl $16, %edx
+ xorl 0x300(%ebp,%ecx),%edi
+ movb %dh, %cl
+ andl $0xff, %eax
+ andl $0xff, %edx
+ xorl 0x600(%ebp,%ebx),%edi
+ xorl 0x700(%ebp,%ecx),%edi
+ movl 24(%esp), %ecx
+ xorl 0x400(%ebp,%eax),%edi
+ xorl 0x500(%ebp,%edx),%edi
+
+
+ movl (%ecx), %eax
+ xorl %ebx, %ebx
+ movl 4(%ecx), %edx
+ xorl %edi, %eax
+ xorl %ecx, %ecx
+ xorl %edi, %edx
+ andl $0xfcfcfcfc, %eax
+ andl $0xcfcfcfcf, %edx
+ movb %al, %bl
+ movb %ah, %cl
+ rorl $4, %edx
+ xorl (%ebp,%ebx),%esi
+ movb %dl, %bl
+ xorl 0x200(%ebp,%ecx),%esi
+ movb %dh, %cl
+ shrl $16, %eax
+ xorl 0x100(%ebp,%ebx),%esi
+ movb %ah, %bl
+ shrl $16, %edx
+ xorl 0x300(%ebp,%ecx),%esi
+ movb %dh, %cl
+ andl $0xff, %eax
+ andl $0xff, %edx
+ xorl 0x600(%ebp,%ebx),%esi
+ xorl 0x700(%ebp,%ecx),%esi
+ movl 24(%esp), %ecx
+ xorl 0x400(%ebp,%eax),%esi
+ xorl 0x500(%ebp,%edx),%esi
+.L001end:
+
+
+ movl 20(%esp), %edx
+.byte 209
+.byte 206
+ movl %edi, %eax
+ xorl %esi, %edi
+ andl $0xaaaaaaaa, %edi
+ xorl %edi, %eax
+ xorl %edi, %esi
+
+ roll $23, %eax
+ movl %eax, %edi
+ xorl %esi, %eax
+ andl $0x03fc03fc, %eax
+ xorl %eax, %edi
+ xorl %eax, %esi
+
+ roll $10, %edi
+ movl %edi, %eax
+ xorl %esi, %edi
+ andl $0x33333333, %edi
+ xorl %edi, %eax
+ xorl %edi, %esi
+
+ roll $18, %esi
+ movl %esi, %edi
+ xorl %eax, %esi
+ andl $0xfff0000f, %esi
+ xorl %esi, %edi
+ xorl %esi, %eax
+
+ roll $12, %edi
+ movl %edi, %esi
+ xorl %eax, %edi
+ andl $0xf0f0f0f0, %edi
+ xorl %edi, %esi
+ xorl %edi, %eax
+
+ rorl $4, %eax
+ movl %eax, (%edx)
+ movl %esi, 4(%edx)
+ popl %ebp
+ popl %ebx
+ popl %edi
+ popl %esi
+ ret
+.L_DES_encrypt1_end:
+ .size DES_encrypt1,.L_DES_encrypt1_end-DES_encrypt1
+.ident "desasm.pl"
+.text
+ .align 16
+.globl DES_encrypt2
+ .type DES_encrypt2,@function
+DES_encrypt2:
+ pushl %esi
+ pushl %edi
+
+
+ movl 12(%esp), %eax
+ xorl %ecx, %ecx
+ pushl %ebx
+ pushl %ebp
+ movl (%eax), %esi
+ movl 28(%esp), %ebx
+ roll $3, %esi
+ movl 4(%eax), %edi
+ roll $3, %edi
+ leal DES_SPtrans, %ebp
+ movl 24(%esp), %ecx
+ cmpl $0, %ebx
+ je .L002start_decrypt
+
+
+ movl (%ecx), %eax
+ xorl %ebx, %ebx
+ movl 4(%ecx), %edx
+ xorl %esi, %eax
+ xorl %ecx, %ecx
+ xorl %esi, %edx
+ andl $0xfcfcfcfc, %eax
+ andl $0xcfcfcfcf, %edx
+ movb %al, %bl
+ movb %ah, %cl
+ rorl $4, %edx
+ xorl (%ebp,%ebx),%edi
+ movb %dl, %bl
+ xorl 0x200(%ebp,%ecx),%edi
+ movb %dh, %cl
+ shrl $16, %eax
+ xorl 0x100(%ebp,%ebx),%edi
+ movb %ah, %bl
+ shrl $16, %edx
+ xorl 0x300(%ebp,%ecx),%edi
+ movb %dh, %cl
+ andl $0xff, %eax
+ andl $0xff, %edx
+ xorl 0x600(%ebp,%ebx),%edi
+ xorl 0x700(%ebp,%ecx),%edi
+ movl 24(%esp), %ecx
+ xorl 0x400(%ebp,%eax),%edi
+ xorl 0x500(%ebp,%edx),%edi
+
+
+ movl 8(%ecx), %eax
+ xorl %ebx, %ebx
+ movl 12(%ecx), %edx
+ xorl %edi, %eax
+ xorl %ecx, %ecx
+ xorl %edi, %edx
+ andl $0xfcfcfcfc, %eax
+ andl $0xcfcfcfcf, %edx
+ movb %al, %bl
+ movb %ah, %cl
+ rorl $4, %edx
+ xorl (%ebp,%ebx),%esi
+ movb %dl, %bl
+ xorl 0x200(%ebp,%ecx),%esi
+ movb %dh, %cl
+ shrl $16, %eax
+ xorl 0x100(%ebp,%ebx),%esi
+ movb %ah, %bl
+ shrl $16, %edx
+ xorl 0x300(%ebp,%ecx),%esi
+ movb %dh, %cl
+ andl $0xff, %eax
+ andl $0xff, %edx
+ xorl 0x600(%ebp,%ebx),%esi
+ xorl 0x700(%ebp,%ecx),%esi
+ movl 24(%esp), %ecx
+ xorl 0x400(%ebp,%eax),%esi
+ xorl 0x500(%ebp,%edx),%esi
+
+
+ movl 16(%ecx), %eax
+ xorl %ebx, %ebx
+ movl 20(%ecx), %edx
+ xorl %esi, %eax
+ xorl %ecx, %ecx
+ xorl %esi, %edx
+ andl $0xfcfcfcfc, %eax
+ andl $0xcfcfcfcf, %edx
+ movb %al, %bl
+ movb %ah, %cl
+ rorl $4, %edx
+ xorl (%ebp,%ebx),%edi
+ movb %dl, %bl
+ xorl 0x200(%ebp,%ecx),%edi
+ movb %dh, %cl
+ shrl $16, %eax
+ xorl 0x100(%ebp,%ebx),%edi
+ movb %ah, %bl
+ shrl $16, %edx
+ xorl 0x300(%ebp,%ecx),%edi
+ movb %dh, %cl
+ andl $0xff, %eax
+ andl $0xff, %edx
+ xorl 0x600(%ebp,%ebx),%edi
+ xorl 0x700(%ebp,%ecx),%edi
+ movl 24(%esp), %ecx
+ xorl 0x400(%ebp,%eax),%edi
+ xorl 0x500(%ebp,%edx),%edi
+
+
+ movl 24(%ecx), %eax
+ xorl %ebx, %ebx
+ movl 28(%ecx), %edx
+ xorl %edi, %eax
+ xorl %ecx, %ecx
+ xorl %edi, %edx
+ andl $0xfcfcfcfc, %eax
+ andl $0xcfcfcfcf, %edx
+ movb %al, %bl
+ movb %ah, %cl
+ rorl $4, %edx
+ xorl (%ebp,%ebx),%esi
+ movb %dl, %bl
+ xorl 0x200(%ebp,%ecx),%esi
+ movb %dh, %cl
+ shrl $16, %eax
+ xorl 0x100(%ebp,%ebx),%esi
+ movb %ah, %bl
+ shrl $16, %edx
+ xorl 0x300(%ebp,%ecx),%esi
+ movb %dh, %cl
+ andl $0xff, %eax
+ andl $0xff, %edx
+ xorl 0x600(%ebp,%ebx),%esi
+ xorl 0x700(%ebp,%ecx),%esi
+ movl 24(%esp), %ecx
+ xorl 0x400(%ebp,%eax),%esi
+ xorl 0x500(%ebp,%edx),%esi
+
+
+ movl 32(%ecx), %eax
+ xorl %ebx, %ebx
+ movl 36(%ecx), %edx
+ xorl %esi, %eax
+ xorl %ecx, %ecx
+ xorl %esi, %edx
+ andl $0xfcfcfcfc, %eax
+ andl $0xcfcfcfcf, %edx
+ movb %al, %bl
+ movb %ah, %cl
+ rorl $4, %edx
+ xorl (%ebp,%ebx),%edi
+ movb %dl, %bl
+ xorl 0x200(%ebp,%ecx),%edi
+ movb %dh, %cl
+ shrl $16, %eax
+ xorl 0x100(%ebp,%ebx),%edi
+ movb %ah, %bl
+ shrl $16, %edx
+ xorl 0x300(%ebp,%ecx),%edi
+ movb %dh, %cl
+ andl $0xff, %eax
+ andl $0xff, %edx
+ xorl 0x600(%ebp,%ebx),%edi
+ xorl 0x700(%ebp,%ecx),%edi
+ movl 24(%esp), %ecx
+ xorl 0x400(%ebp,%eax),%edi
+ xorl 0x500(%ebp,%edx),%edi
+
+
+ movl 40(%ecx), %eax
+ xorl %ebx, %ebx
+ movl 44(%ecx), %edx
+ xorl %edi, %eax
+ xorl %ecx, %ecx
+ xorl %edi, %edx
+ andl $0xfcfcfcfc, %eax
+ andl $0xcfcfcfcf, %edx
+ movb %al, %bl
+ movb %ah, %cl
+ rorl $4, %edx
+ xorl (%ebp,%ebx),%esi
+ movb %dl, %bl
+ xorl 0x200(%ebp,%ecx),%esi
+ movb %dh, %cl
+ shrl $16, %eax
+ xorl 0x100(%ebp,%ebx),%esi
+ movb %ah, %bl
+ shrl $16, %edx
+ xorl 0x300(%ebp,%ecx),%esi
+ movb %dh, %cl
+ andl $0xff, %eax
+ andl $0xff, %edx
+ xorl 0x600(%ebp,%ebx),%esi
+ xorl 0x700(%ebp,%ecx),%esi
+ movl 24(%esp), %ecx
+ xorl 0x400(%ebp,%eax),%esi
+ xorl 0x500(%ebp,%edx),%esi
+
+
+ movl 48(%ecx), %eax
+ xorl %ebx, %ebx
+ movl 52(%ecx), %edx
+ xorl %esi, %eax
+ xorl %ecx, %ecx
+ xorl %esi, %edx
+ andl $0xfcfcfcfc, %eax
+ andl $0xcfcfcfcf, %edx
+ movb %al, %bl
+ movb %ah, %cl
+ rorl $4, %edx
+ xorl (%ebp,%ebx),%edi
+ movb %dl, %bl
+ xorl 0x200(%ebp,%ecx),%edi
+ movb %dh, %cl
+ shrl $16, %eax
+ xorl 0x100(%ebp,%ebx),%edi
+ movb %ah, %bl
+ shrl $16, %edx
+ xorl 0x300(%ebp,%ecx),%edi
+ movb %dh, %cl
+ andl $0xff, %eax
+ andl $0xff, %edx
+ xorl 0x600(%ebp,%ebx),%edi
+ xorl 0x700(%ebp,%ecx),%edi
+ movl 24(%esp), %ecx
+ xorl 0x400(%ebp,%eax),%edi
+ xorl 0x500(%ebp,%edx),%edi
+
+
+ movl 56(%ecx), %eax
+ xorl %ebx, %ebx
+ movl 60(%ecx), %edx
+ xorl %edi, %eax
+ xorl %ecx, %ecx
+ xorl %edi, %edx
+ andl $0xfcfcfcfc, %eax
+ andl $0xcfcfcfcf, %edx
+ movb %al, %bl
+ movb %ah, %cl
+ rorl $4, %edx
+ xorl (%ebp,%ebx),%esi
+ movb %dl, %bl
+ xorl 0x200(%ebp,%ecx),%esi
+ movb %dh, %cl
+ shrl $16, %eax
+ xorl 0x100(%ebp,%ebx),%esi
+ movb %ah, %bl
+ shrl $16, %edx
+ xorl 0x300(%ebp,%ecx),%esi
+ movb %dh, %cl
+ andl $0xff, %eax
+ andl $0xff, %edx
+ xorl 0x600(%ebp,%ebx),%esi
+ xorl 0x700(%ebp,%ecx),%esi
+ movl 24(%esp), %ecx
+ xorl 0x400(%ebp,%eax),%esi
+ xorl 0x500(%ebp,%edx),%esi
+
+
+ movl 64(%ecx), %eax
+ xorl %ebx, %ebx
+ movl 68(%ecx), %edx
+ xorl %esi, %eax
+ xorl %ecx, %ecx
+ xorl %esi, %edx
+ andl $0xfcfcfcfc, %eax
+ andl $0xcfcfcfcf, %edx
+ movb %al, %bl
+ movb %ah, %cl
+ rorl $4, %edx
+ xorl (%ebp,%ebx),%edi
+ movb %dl, %bl
+ xorl 0x200(%ebp,%ecx),%edi
+ movb %dh, %cl
+ shrl $16, %eax
+ xorl 0x100(%ebp,%e