| Index: openssl/crypto/des/asm/des-586-mac.S
 | 
| diff --git a/openssl/crypto/des/asm/des-586-mac.S b/openssl/crypto/des/asm/des-586-mac.S
 | 
| deleted file mode 100644
 | 
| index 49694169c118ff6046f65e8da8f0128d3a3ec2c8..0000000000000000000000000000000000000000
 | 
| --- a/openssl/crypto/des/asm/des-586-mac.S
 | 
| +++ /dev/null
 | 
| @@ -1,1821 +0,0 @@
 | 
| -.file	"des-586.s"
 | 
| -.text
 | 
| -.globl	_DES_SPtrans
 | 
| -.align	4
 | 
| -__x86_DES_encrypt:
 | 
| -	pushl	%ecx
 | 
| -	# Round 0 
 | 
| -	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,1),%edi
 | 
| -	movb	%dl,%bl
 | 
| -	xorl	0x200(%ebp,%ecx,1),%edi
 | 
| -	movb	%dh,%cl
 | 
| -	shrl	$16,%eax
 | 
| -	xorl	0x100(%ebp,%ebx,1),%edi
 | 
| -	movb	%ah,%bl
 | 
| -	shrl	$16,%edx
 | 
| -	xorl	0x300(%ebp,%ecx,1),%edi
 | 
| -	movb	%dh,%cl
 | 
| -	andl	$0xff,%eax
 | 
| -	andl	$0xff,%edx
 | 
| -	xorl	0x600(%ebp,%ebx,1),%edi
 | 
| -	xorl	0x700(%ebp,%ecx,1),%edi
 | 
| -	movl	(%esp),%ecx
 | 
| -	xorl	0x400(%ebp,%eax,1),%edi
 | 
| -	xorl	0x500(%ebp,%edx,1),%edi
 | 
| -	# Round 1 
 | 
| -	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,1),%esi
 | 
| -	movb	%dl,%bl
 | 
| -	xorl	0x200(%ebp,%ecx,1),%esi
 | 
| -	movb	%dh,%cl
 | 
| -	shrl	$16,%eax
 | 
| -	xorl	0x100(%ebp,%ebx,1),%esi
 | 
| -	movb	%ah,%bl
 | 
| -	shrl	$16,%edx
 | 
| -	xorl	0x300(%ebp,%ecx,1),%esi
 | 
| -	movb	%dh,%cl
 | 
| -	andl	$0xff,%eax
 | 
| -	andl	$0xff,%edx
 | 
| -	xorl	0x600(%ebp,%ebx,1),%esi
 | 
| -	xorl	0x700(%ebp,%ecx,1),%esi
 | 
| -	movl	(%esp),%ecx
 | 
| -	xorl	0x400(%ebp,%eax,1),%esi
 | 
| -	xorl	0x500(%ebp,%edx,1),%esi
 | 
| -	# Round 2 
 | 
| -	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,1),%edi
 | 
| -	movb	%dl,%bl
 | 
| -	xorl	0x200(%ebp,%ecx,1),%edi
 | 
| -	movb	%dh,%cl
 | 
| -	shrl	$16,%eax
 | 
| -	xorl	0x100(%ebp,%ebx,1),%edi
 | 
| -	movb	%ah,%bl
 | 
| -	shrl	$16,%edx
 | 
| -	xorl	0x300(%ebp,%ecx,1),%edi
 | 
| -	movb	%dh,%cl
 | 
| -	andl	$0xff,%eax
 | 
| -	andl	$0xff,%edx
 | 
| -	xorl	0x600(%ebp,%ebx,1),%edi
 | 
| -	xorl	0x700(%ebp,%ecx,1),%edi
 | 
| -	movl	(%esp),%ecx
 | 
| -	xorl	0x400(%ebp,%eax,1),%edi
 | 
| -	xorl	0x500(%ebp,%edx,1),%edi
 | 
| -	# Round 3 
 | 
| -	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,1),%esi
 | 
| -	movb	%dl,%bl
 | 
| -	xorl	0x200(%ebp,%ecx,1),%esi
 | 
| -	movb	%dh,%cl
 | 
| -	shrl	$16,%eax
 | 
| -	xorl	0x100(%ebp,%ebx,1),%esi
 | 
| -	movb	%ah,%bl
 | 
| -	shrl	$16,%edx
 | 
| -	xorl	0x300(%ebp,%ecx,1),%esi
 | 
| -	movb	%dh,%cl
 | 
| -	andl	$0xff,%eax
 | 
| -	andl	$0xff,%edx
 | 
| -	xorl	0x600(%ebp,%ebx,1),%esi
 | 
| -	xorl	0x700(%ebp,%ecx,1),%esi
 | 
| -	movl	(%esp),%ecx
 | 
| -	xorl	0x400(%ebp,%eax,1),%esi
 | 
| -	xorl	0x500(%ebp,%edx,1),%esi
 | 
| -	# Round 4 
 | 
| -	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,1),%edi
 | 
| -	movb	%dl,%bl
 | 
| -	xorl	0x200(%ebp,%ecx,1),%edi
 | 
| -	movb	%dh,%cl
 | 
| -	shrl	$16,%eax
 | 
| -	xorl	0x100(%ebp,%ebx,1),%edi
 | 
| -	movb	%ah,%bl
 | 
| -	shrl	$16,%edx
 | 
| -	xorl	0x300(%ebp,%ecx,1),%edi
 | 
| -	movb	%dh,%cl
 | 
| -	andl	$0xff,%eax
 | 
| -	andl	$0xff,%edx
 | 
| -	xorl	0x600(%ebp,%ebx,1),%edi
 | 
| -	xorl	0x700(%ebp,%ecx,1),%edi
 | 
| -	movl	(%esp),%ecx
 | 
| -	xorl	0x400(%ebp,%eax,1),%edi
 | 
| -	xorl	0x500(%ebp,%edx,1),%edi
 | 
| -	# Round 5 
 | 
| -	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,1),%esi
 | 
| -	movb	%dl,%bl
 | 
| -	xorl	0x200(%ebp,%ecx,1),%esi
 | 
| -	movb	%dh,%cl
 | 
| -	shrl	$16,%eax
 | 
| -	xorl	0x100(%ebp,%ebx,1),%esi
 | 
| -	movb	%ah,%bl
 | 
| -	shrl	$16,%edx
 | 
| -	xorl	0x300(%ebp,%ecx,1),%esi
 | 
| -	movb	%dh,%cl
 | 
| -	andl	$0xff,%eax
 | 
| -	andl	$0xff,%edx
 | 
| -	xorl	0x600(%ebp,%ebx,1),%esi
 | 
| -	xorl	0x700(%ebp,%ecx,1),%esi
 | 
| -	movl	(%esp),%ecx
 | 
| -	xorl	0x400(%ebp,%eax,1),%esi
 | 
| -	xorl	0x500(%ebp,%edx,1),%esi
 | 
| -	# Round 6 
 | 
| -	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,1),%edi
 | 
| -	movb	%dl,%bl
 | 
| -	xorl	0x200(%ebp,%ecx,1),%edi
 | 
| -	movb	%dh,%cl
 | 
| -	shrl	$16,%eax
 | 
| -	xorl	0x100(%ebp,%ebx,1),%edi
 | 
| -	movb	%ah,%bl
 | 
| -	shrl	$16,%edx
 | 
| -	xorl	0x300(%ebp,%ecx,1),%edi
 | 
| -	movb	%dh,%cl
 | 
| -	andl	$0xff,%eax
 | 
| -	andl	$0xff,%edx
 | 
| -	xorl	0x600(%ebp,%ebx,1),%edi
 | 
| -	xorl	0x700(%ebp,%ecx,1),%edi
 | 
| -	movl	(%esp),%ecx
 | 
| -	xorl	0x400(%ebp,%eax,1),%edi
 | 
| -	xorl	0x500(%ebp,%edx,1),%edi
 | 
| -	# Round 7 
 | 
| -	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,1),%esi
 | 
| -	movb	%dl,%bl
 | 
| -	xorl	0x200(%ebp,%ecx,1),%esi
 | 
| -	movb	%dh,%cl
 | 
| -	shrl	$16,%eax
 | 
| -	xorl	0x100(%ebp,%ebx,1),%esi
 | 
| -	movb	%ah,%bl
 | 
| -	shrl	$16,%edx
 | 
| -	xorl	0x300(%ebp,%ecx,1),%esi
 | 
| -	movb	%dh,%cl
 | 
| -	andl	$0xff,%eax
 | 
| -	andl	$0xff,%edx
 | 
| -	xorl	0x600(%ebp,%ebx,1),%esi
 | 
| -	xorl	0x700(%ebp,%ecx,1),%esi
 | 
| -	movl	(%esp),%ecx
 | 
| -	xorl	0x400(%ebp,%eax,1),%esi
 | 
| -	xorl	0x500(%ebp,%edx,1),%esi
 | 
| -	# Round 8 
 | 
| -	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,1),%edi
 | 
| -	movb	%dl,%bl
 | 
| -	xorl	0x200(%ebp,%ecx,1),%edi
 | 
| -	movb	%dh,%cl
 | 
| -	shrl	$16,%eax
 | 
| -	xorl	0x100(%ebp,%ebx,1),%edi
 | 
| -	movb	%ah,%bl
 | 
| -	shrl	$16,%edx
 | 
| -	xorl	0x300(%ebp,%ecx,1),%edi
 | 
| -	movb	%dh,%cl
 | 
| -	andl	$0xff,%eax
 | 
| -	andl	$0xff,%edx
 | 
| -	xorl	0x600(%ebp,%ebx,1),%edi
 | 
| -	xorl	0x700(%ebp,%ecx,1),%edi
 | 
| -	movl	(%esp),%ecx
 | 
| -	xorl	0x400(%ebp,%eax,1),%edi
 | 
| -	xorl	0x500(%ebp,%edx,1),%edi
 | 
| -	# Round 9 
 | 
| -	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,1),%esi
 | 
| -	movb	%dl,%bl
 | 
| -	xorl	0x200(%ebp,%ecx,1),%esi
 | 
| -	movb	%dh,%cl
 | 
| -	shrl	$16,%eax
 | 
| -	xorl	0x100(%ebp,%ebx,1),%esi
 | 
| -	movb	%ah,%bl
 | 
| -	shrl	$16,%edx
 | 
| -	xorl	0x300(%ebp,%ecx,1),%esi
 | 
| -	movb	%dh,%cl
 | 
| -	andl	$0xff,%eax
 | 
| -	andl	$0xff,%edx
 | 
| -	xorl	0x600(%ebp,%ebx,1),%esi
 | 
| -	xorl	0x700(%ebp,%ecx,1),%esi
 | 
| -	movl	(%esp),%ecx
 | 
| -	xorl	0x400(%ebp,%eax,1),%esi
 | 
| -	xorl	0x500(%ebp,%edx,1),%esi
 | 
| -	# Round 10 
 | 
| -	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,1),%edi
 | 
| -	movb	%dl,%bl
 | 
| -	xorl	0x200(%ebp,%ecx,1),%edi
 | 
| -	movb	%dh,%cl
 | 
| -	shrl	$16,%eax
 | 
| -	xorl	0x100(%ebp,%ebx,1),%edi
 | 
| -	movb	%ah,%bl
 | 
| -	shrl	$16,%edx
 | 
| -	xorl	0x300(%ebp,%ecx,1),%edi
 | 
| -	movb	%dh,%cl
 | 
| -	andl	$0xff,%eax
 | 
| -	andl	$0xff,%edx
 | 
| -	xorl	0x600(%ebp,%ebx,1),%edi
 | 
| -	xorl	0x700(%ebp,%ecx,1),%edi
 | 
| -	movl	(%esp),%ecx
 | 
| -	xorl	0x400(%ebp,%eax,1),%edi
 | 
| -	xorl	0x500(%ebp,%edx,1),%edi
 | 
| -	# Round 11 
 | 
| -	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,1),%esi
 | 
| -	movb	%dl,%bl
 | 
| -	xorl	0x200(%ebp,%ecx,1),%esi
 | 
| -	movb	%dh,%cl
 | 
| -	shrl	$16,%eax
 | 
| -	xorl	0x100(%ebp,%ebx,1),%esi
 | 
| -	movb	%ah,%bl
 | 
| -	shrl	$16,%edx
 | 
| -	xorl	0x300(%ebp,%ecx,1),%esi
 | 
| -	movb	%dh,%cl
 | 
| -	andl	$0xff,%eax
 | 
| -	andl	$0xff,%edx
 | 
| -	xorl	0x600(%ebp,%ebx,1),%esi
 | 
| -	xorl	0x700(%ebp,%ecx,1),%esi
 | 
| -	movl	(%esp),%ecx
 | 
| -	xorl	0x400(%ebp,%eax,1),%esi
 | 
| -	xorl	0x500(%ebp,%edx,1),%esi
 | 
| -	# Round 12 
 | 
| -	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,1),%edi
 | 
| -	movb	%dl,%bl
 | 
| -	xorl	0x200(%ebp,%ecx,1),%edi
 | 
| -	movb	%dh,%cl
 | 
| -	shrl	$16,%eax
 | 
| -	xorl	0x100(%ebp,%ebx,1),%edi
 | 
| -	movb	%ah,%bl
 | 
| -	shrl	$16,%edx
 | 
| -	xorl	0x300(%ebp,%ecx,1),%edi
 | 
| -	movb	%dh,%cl
 | 
| -	andl	$0xff,%eax
 | 
| -	andl	$0xff,%edx
 | 
| -	xorl	0x600(%ebp,%ebx,1),%edi
 | 
| -	xorl	0x700(%ebp,%ecx,1),%edi
 | 
| -	movl	(%esp),%ecx
 | 
| -	xorl	0x400(%ebp,%eax,1),%edi
 | 
| -	xorl	0x500(%ebp,%edx,1),%edi
 | 
| -	# Round 13 
 | 
| -	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,1),%esi
 | 
| -	movb	%dl,%bl
 | 
| -	xorl	0x200(%ebp,%ecx,1),%esi
 | 
| -	movb	%dh,%cl
 | 
| -	shrl	$16,%eax
 | 
| -	xorl	0x100(%ebp,%ebx,1),%esi
 | 
| -	movb	%ah,%bl
 | 
| -	shrl	$16,%edx
 | 
| -	xorl	0x300(%ebp,%ecx,1),%esi
 | 
| -	movb	%dh,%cl
 | 
| -	andl	$0xff,%eax
 | 
| -	andl	$0xff,%edx
 | 
| -	xorl	0x600(%ebp,%ebx,1),%esi
 | 
| -	xorl	0x700(%ebp,%ecx,1),%esi
 | 
| -	movl	(%esp),%ecx
 | 
| -	xorl	0x400(%ebp,%eax,1),%esi
 | 
| -	xorl	0x500(%ebp,%edx,1),%esi
 | 
| -	# Round 14 
 | 
| -	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,1),%edi
 | 
| -	movb	%dl,%bl
 | 
| -	xorl	0x200(%ebp,%ecx,1),%edi
 | 
| -	movb	%dh,%cl
 | 
| -	shrl	$16,%eax
 | 
| -	xorl	0x100(%ebp,%ebx,1),%edi
 | 
| -	movb	%ah,%bl
 | 
| -	shrl	$16,%edx
 | 
| -	xorl	0x300(%ebp,%ecx,1),%edi
 | 
| -	movb	%dh,%cl
 | 
| -	andl	$0xff,%eax
 | 
| -	andl	$0xff,%edx
 | 
| -	xorl	0x600(%ebp,%ebx,1),%edi
 | 
| -	xorl	0x700(%ebp,%ecx,1),%edi
 | 
| -	movl	(%esp),%ecx
 | 
| -	xorl	0x400(%ebp,%eax,1),%edi
 | 
| -	xorl	0x500(%ebp,%edx,1),%edi
 | 
| -	# Round 15 
 | 
| -	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,1),%esi
 | 
| -	movb	%dl,%bl
 | 
| -	xorl	0x200(%ebp,%ecx,1),%esi
 | 
| -	movb	%dh,%cl
 | 
| -	shrl	$16,%eax
 | 
| -	xorl	0x100(%ebp,%ebx,1),%esi
 | 
| -	movb	%ah,%bl
 | 
| -	shrl	$16,%edx
 | 
| -	xorl	0x300(%ebp,%ecx,1),%esi
 | 
| -	movb	%dh,%cl
 | 
| -	andl	$0xff,%eax
 | 
| -	andl	$0xff,%edx
 | 
| -	xorl	0x600(%ebp,%ebx,1),%esi
 | 
| -	xorl	0x700(%ebp,%ecx,1),%esi
 | 
| -	movl	(%esp),%ecx
 | 
| -	xorl	0x400(%ebp,%eax,1),%esi
 | 
| -	xorl	0x500(%ebp,%edx,1),%esi
 | 
| -	addl	$4,%esp
 | 
| -	ret
 | 
| -.align	4
 | 
| -__x86_DES_decrypt:
 | 
| -	pushl	%ecx
 | 
| -	# Round 15 
 | 
| -	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,1),%edi
 | 
| -	movb	%dl,%bl
 | 
| -	xorl	0x200(%ebp,%ecx,1),%edi
 | 
| -	movb	%dh,%cl
 | 
| -	shrl	$16,%eax
 | 
| -	xorl	0x100(%ebp,%ebx,1),%edi
 | 
| -	movb	%ah,%bl
 | 
| -	shrl	$16,%edx
 | 
| -	xorl	0x300(%ebp,%ecx,1),%edi
 | 
| -	movb	%dh,%cl
 | 
| -	andl	$0xff,%eax
 | 
| -	andl	$0xff,%edx
 | 
| -	xorl	0x600(%ebp,%ebx,1),%edi
 | 
| -	xorl	0x700(%ebp,%ecx,1),%edi
 | 
| -	movl	(%esp),%ecx
 | 
| -	xorl	0x400(%ebp,%eax,1),%edi
 | 
| -	xorl	0x500(%ebp,%edx,1),%edi
 | 
| -	# Round 14 
 | 
| -	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,1),%esi
 | 
| -	movb	%dl,%bl
 | 
| -	xorl	0x200(%ebp,%ecx,1),%esi
 | 
| -	movb	%dh,%cl
 | 
| -	shrl	$16,%eax
 | 
| -	xorl	0x100(%ebp,%ebx,1),%esi
 | 
| -	movb	%ah,%bl
 | 
| -	shrl	$16,%edx
 | 
| -	xorl	0x300(%ebp,%ecx,1),%esi
 | 
| -	movb	%dh,%cl
 | 
| -	andl	$0xff,%eax
 | 
| -	andl	$0xff,%edx
 | 
| -	xorl	0x600(%ebp,%ebx,1),%esi
 | 
| -	xorl	0x700(%ebp,%ecx,1),%esi
 | 
| -	movl	(%esp),%ecx
 | 
| -	xorl	0x400(%ebp,%eax,1),%esi
 | 
| -	xorl	0x500(%ebp,%edx,1),%esi
 | 
| -	# Round 13 
 | 
| -	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,1),%edi
 | 
| -	movb	%dl,%bl
 | 
| -	xorl	0x200(%ebp,%ecx,1),%edi
 | 
| -	movb	%dh,%cl
 | 
| -	shrl	$16,%eax
 | 
| -	xorl	0x100(%ebp,%ebx,1),%edi
 | 
| -	movb	%ah,%bl
 | 
| -	shrl	$16,%edx
 | 
| -	xorl	0x300(%ebp,%ecx,1),%edi
 | 
| -	movb	%dh,%cl
 | 
| -	andl	$0xff,%eax
 | 
| -	andl	$0xff,%edx
 | 
| -	xorl	0x600(%ebp,%ebx,1),%edi
 | 
| -	xorl	0x700(%ebp,%ecx,1),%edi
 | 
| -	movl	(%esp),%ecx
 | 
| -	xorl	0x400(%ebp,%eax,1),%edi
 | 
| -	xorl	0x500(%ebp,%edx,1),%edi
 | 
| -	# Round 12 
 | 
| -	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,1),%esi
 | 
| -	movb	%dl,%bl
 | 
| -	xorl	0x200(%ebp,%ecx,1),%esi
 | 
| -	movb	%dh,%cl
 | 
| -	shrl	$16,%eax
 | 
| -	xorl	0x100(%ebp,%ebx,1),%esi
 | 
| -	movb	%ah,%bl
 | 
| -	shrl	$16,%edx
 | 
| -	xorl	0x300(%ebp,%ecx,1),%esi
 | 
| -	movb	%dh,%cl
 | 
| -	andl	$0xff,%eax
 | 
| -	andl	$0xff,%edx
 | 
| -	xorl	0x600(%ebp,%ebx,1),%esi
 | 
| -	xorl	0x700(%ebp,%ecx,1),%esi
 | 
| -	movl	(%esp),%ecx
 | 
| -	xorl	0x400(%ebp,%eax,1),%esi
 | 
| -	xorl	0x500(%ebp,%edx,1),%esi
 | 
| -	# Round 11 
 | 
| -	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,1),%edi
 | 
| -	movb	%dl,%bl
 | 
| -	xorl	0x200(%ebp,%ecx,1),%edi
 | 
| -	movb	%dh,%cl
 | 
| -	shrl	$16,%eax
 | 
| -	xorl	0x100(%ebp,%ebx,1),%edi
 | 
| -	movb	%ah,%bl
 | 
| -	shrl	$16,%edx
 | 
| -	xorl	0x300(%ebp,%ecx,1),%edi
 | 
| -	movb	%dh,%cl
 | 
| -	andl	$0xff,%eax
 | 
| -	andl	$0xff,%edx
 | 
| -	xorl	0x600(%ebp,%ebx,1),%edi
 | 
| -	xorl	0x700(%ebp,%ecx,1),%edi
 | 
| -	movl	(%esp),%ecx
 | 
| -	xorl	0x400(%ebp,%eax,1),%edi
 | 
| -	xorl	0x500(%ebp,%edx,1),%edi
 | 
| -	# Round 10 
 | 
| -	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,1),%esi
 | 
| -	movb	%dl,%bl
 | 
| -	xorl	0x200(%ebp,%ecx,1),%esi
 | 
| -	movb	%dh,%cl
 | 
| -	shrl	$16,%eax
 | 
| -	xorl	0x100(%ebp,%ebx,1),%esi
 | 
| -	movb	%ah,%bl
 | 
| -	shrl	$16,%edx
 | 
| -	xorl	0x300(%ebp,%ecx,1),%esi
 | 
| -	movb	%dh,%cl
 | 
| -	andl	$0xff,%eax
 | 
| -	andl	$0xff,%edx
 | 
| -	xorl	0x600(%ebp,%ebx,1),%esi
 | 
| -	xorl	0x700(%ebp,%ecx,1),%esi
 | 
| -	movl	(%esp),%ecx
 | 
| -	xorl	0x400(%ebp,%eax,1),%esi
 | 
| -	xorl	0x500(%ebp,%edx,1),%esi
 | 
| -	# Round 9 
 | 
| -	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,1),%edi
 | 
| -	movb	%dl,%bl
 | 
| -	xorl	0x200(%ebp,%ecx,1),%edi
 | 
| -	movb	%dh,%cl
 | 
| -	shrl	$16,%eax
 | 
| -	xorl	0x100(%ebp,%ebx,1),%edi
 | 
| -	movb	%ah,%bl
 | 
| -	shrl	$16,%edx
 | 
| -	xorl	0x300(%ebp,%ecx,1),%edi
 | 
| -	movb	%dh,%cl
 | 
| -	andl	$0xff,%eax
 | 
| -	andl	$0xff,%edx
 | 
| -	xorl	0x600(%ebp,%ebx,1),%edi
 | 
| -	xorl	0x700(%ebp,%ecx,1),%edi
 | 
| -	movl	(%esp),%ecx
 | 
| -	xorl	0x400(%ebp,%eax,1),%edi
 | 
| -	xorl	0x500(%ebp,%edx,1),%edi
 | 
| -	# Round 8 
 | 
| -	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,1),%esi
 | 
| -	movb	%dl,%bl
 | 
| -	xorl	0x200(%ebp,%ecx,1),%esi
 | 
| -	movb	%dh,%cl
 | 
| -	shrl	$16,%eax
 | 
| -	xorl	0x100(%ebp,%ebx,1),%esi
 | 
| -	movb	%ah,%bl
 | 
| -	shrl	$16,%edx
 | 
| -	xorl	0x300(%ebp,%ecx,1),%esi
 | 
| -	movb	%dh,%cl
 | 
| -	andl	$0xff,%eax
 | 
| -	andl	$0xff,%edx
 | 
| -	xorl	0x600(%ebp,%ebx,1),%esi
 | 
| -	xorl	0x700(%ebp,%ecx,1),%esi
 | 
| -	movl	(%esp),%ecx
 | 
| -	xorl	0x400(%ebp,%eax,1),%esi
 | 
| -	xorl	0x500(%ebp,%edx,1),%esi
 | 
| -	# Round 7 
 | 
| -	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,1),%edi
 | 
| -	movb	%dl,%bl
 | 
| -	xorl	0x200(%ebp,%ecx,1),%edi
 | 
| -	movb	%dh,%cl
 | 
| -	shrl	$16,%eax
 | 
| -	xorl	0x100(%ebp,%ebx,1),%edi
 | 
| -	movb	%ah,%bl
 | 
| -	shrl	$16,%edx
 | 
| -	xorl	0x300(%ebp,%ecx,1),%edi
 | 
| -	movb	%dh,%cl
 | 
| -	andl	$0xff,%eax
 | 
| -	andl	$0xff,%edx
 | 
| -	xorl	0x600(%ebp,%ebx,1),%edi
 | 
| -	xorl	0x700(%ebp,%ecx,1),%edi
 | 
| -	movl	(%esp),%ecx
 | 
| -	xorl	0x400(%ebp,%eax,1),%edi
 | 
| -	xorl	0x500(%ebp,%edx,1),%edi
 | 
| -	# Round 6 
 | 
| -	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,1),%esi
 | 
| -	movb	%dl,%bl
 | 
| -	xorl	0x200(%ebp,%ecx,1),%esi
 | 
| -	movb	%dh,%cl
 | 
| -	shrl	$16,%eax
 | 
| -	xorl	0x100(%ebp,%ebx,1),%esi
 | 
| -	movb	%ah,%bl
 | 
| -	shrl	$16,%edx
 | 
| -	xorl	0x300(%ebp,%ecx,1),%esi
 | 
| -	movb	%dh,%cl
 | 
| -	andl	$0xff,%eax
 | 
| -	andl	$0xff,%edx
 | 
| -	xorl	0x600(%ebp,%ebx,1),%esi
 | 
| -	xorl	0x700(%ebp,%ecx,1),%esi
 | 
| -	movl	(%esp),%ecx
 | 
| -	xorl	0x400(%ebp,%eax,1),%esi
 | 
| -	xorl	0x500(%ebp,%edx,1),%esi
 | 
| -	# Round 5 
 | 
| -	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,1),%edi
 | 
| -	movb	%dl,%bl
 | 
| -	xorl	0x200(%ebp,%ecx,1),%edi
 | 
| -	movb	%dh,%cl
 | 
| -	shrl	$16,%eax
 | 
| -	xorl	0x100(%ebp,%ebx,1),%edi
 | 
| -	movb	%ah,%bl
 | 
| -	shrl	$16,%edx
 | 
| -	xorl	0x300(%ebp,%ecx,1),%edi
 | 
| -	movb	%dh,%cl
 | 
| -	andl	$0xff,%eax
 | 
| -	andl	$0xff,%edx
 | 
| -	xorl	0x600(%ebp,%ebx,1),%edi
 | 
| -	xorl	0x700(%ebp,%ecx,1),%edi
 | 
| -	movl	(%esp),%ecx
 | 
| -	xorl	0x400(%ebp,%eax,1),%edi
 | 
| -	xorl	0x500(%ebp,%edx,1),%edi
 | 
| -	# Round 4 
 | 
| -	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,1),%esi
 | 
| -	movb	%dl,%bl
 | 
| -	xorl	0x200(%ebp,%ecx,1),%esi
 | 
| -	movb	%dh,%cl
 | 
| -	shrl	$16,%eax
 | 
| -	xorl	0x100(%ebp,%ebx,1),%esi
 | 
| -	movb	%ah,%bl
 | 
| -	shrl	$16,%edx
 | 
| -	xorl	0x300(%ebp,%ecx,1),%esi
 | 
| -	movb	%dh,%cl
 | 
| -	andl	$0xff,%eax
 | 
| -	andl	$0xff,%edx
 | 
| -	xorl	0x600(%ebp,%ebx,1),%esi
 | 
| -	xorl	0x700(%ebp,%ecx,1),%esi
 | 
| -	movl	(%esp),%ecx
 | 
| -	xorl	0x400(%ebp,%eax,1),%esi
 | 
| -	xorl	0x500(%ebp,%edx,1),%esi
 | 
| -	# Round 3 
 | 
| -	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,1),%edi
 | 
| -	movb	%dl,%bl
 | 
| -	xorl	0x200(%ebp,%ecx,1),%edi
 | 
| -	movb	%dh,%cl
 | 
| -	shrl	$16,%eax
 | 
| -	xorl	0x100(%ebp,%ebx,1),%edi
 | 
| -	movb	%ah,%bl
 | 
| -	shrl	$16,%edx
 | 
| -	xorl	0x300(%ebp,%ecx,1),%edi
 | 
| -	movb	%dh,%cl
 | 
| -	andl	$0xff,%eax
 | 
| -	andl	$0xff,%edx
 | 
| -	xorl	0x600(%ebp,%ebx,1),%edi
 | 
| -	xorl	0x700(%ebp,%ecx,1),%edi
 | 
| -	movl	(%esp),%ecx
 | 
| -	xorl	0x400(%ebp,%eax,1),%edi
 | 
| -	xorl	0x500(%ebp,%edx,1),%edi
 | 
| -	# Round 2 
 | 
| -	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,1),%esi
 | 
| -	movb	%dl,%bl
 | 
| -	xorl	0x200(%ebp,%ecx,1),%esi
 | 
| -	movb	%dh,%cl
 | 
| -	shrl	$16,%eax
 | 
| -	xorl	0x100(%ebp,%ebx,1),%esi
 | 
| -	movb	%ah,%bl
 | 
| -	shrl	$16,%edx
 | 
| -	xorl	0x300(%ebp,%ecx,1),%esi
 | 
| -	movb	%dh,%cl
 | 
| -	andl	$0xff,%eax
 | 
| -	andl	$0xff,%edx
 | 
| -	xorl	0x600(%ebp,%ebx,1),%esi
 | 
| -	xorl	0x700(%ebp,%ecx,1),%esi
 | 
| -	movl	(%esp),%ecx
 | 
| -	xorl	0x400(%ebp,%eax,1),%esi
 | 
| -	xorl	0x500(%ebp,%edx,1),%esi
 | 
| -	# Round 1 
 | 
| -	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,1),%edi
 | 
| -	movb	%dl,%bl
 | 
| -	xorl	0x200(%ebp,%ecx,1),%edi
 | 
| -	movb	%dh,%cl
 | 
| -	shrl	$16,%eax
 | 
| -	xorl	0x100(%ebp,%ebx,1),%edi
 | 
| -	movb	%ah,%bl
 | 
| -	shrl	$16,%edx
 | 
| -	xorl	0x300(%ebp,%ecx,1),%edi
 | 
| -	movb	%dh,%cl
 | 
| -	andl	$0xff,%eax
 | 
| -	andl	$0xff,%edx
 | 
| -	xorl	0x600(%ebp,%ebx,1),%edi
 | 
| -	xorl	0x700(%ebp,%ecx,1),%edi
 | 
| -	movl	(%esp),%ecx
 | 
| -	xorl	0x400(%ebp,%eax,1),%edi
 | 
| -	xorl	0x500(%ebp,%edx,1),%edi
 | 
| -	# Round 0 
 | 
| -	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,1),%esi
 | 
| -	movb	%dl,%bl
 | 
| -	xorl	0x200(%ebp,%ecx,1),%esi
 | 
| -	movb	%dh,%cl
 | 
| -	shrl	$16,%eax
 | 
| -	xorl	0x100(%ebp,%ebx,1),%esi
 | 
| -	movb	%ah,%bl
 | 
| -	shrl	$16,%edx
 | 
| -	xorl	0x300(%ebp,%ecx,1),%esi
 | 
| -	movb	%dh,%cl
 | 
| -	andl	$0xff,%eax
 | 
| -	andl	$0xff,%edx
 | 
| -	xorl	0x600(%ebp,%ebx,1),%esi
 | 
| -	xorl	0x700(%ebp,%ecx,1),%esi
 | 
| -	movl	(%esp),%ecx
 | 
| -	xorl	0x400(%ebp,%eax,1),%esi
 | 
| -	xorl	0x500(%ebp,%edx,1),%esi
 | 
| -	addl	$4,%esp
 | 
| -	ret
 | 
| -.globl	_DES_encrypt1
 | 
| -.align	4
 | 
| -_DES_encrypt1:
 | 
| -L_DES_encrypt1_begin:
 | 
| -	pushl	%esi
 | 
| -	pushl	%edi
 | 
| -
 | 
| -	# Load the 2 words 
 | 
| -	movl	12(%esp),%esi
 | 
| -	xorl	%ecx,%ecx
 | 
| -	pushl	%ebx
 | 
| -	pushl	%ebp
 | 
| -	movl	(%esi),%eax
 | 
| -	movl	28(%esp),%ebx
 | 
| -	movl	4(%esi),%edi
 | 
| -
 | 
| -	# IP 
 | 
| -	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
 | 
| -
 | 
| -	roll	$1,%edi
 | 
| -	call	L000pic_point
 | 
| -L000pic_point:
 | 
| -	popl	%ebp
 | 
| -	leal	_DES_SPtrans-L000pic_point(%ebp),%ebp
 | 
| -	movl	24(%esp),%ecx
 | 
| -	cmpl	$0,%ebx
 | 
| -	je	L001decrypt
 | 
| -	call	__x86_DES_encrypt
 | 
| -	jmp	L002done
 | 
| -L001decrypt:
 | 
| -	call	__x86_DES_decrypt
 | 
| -L002done:
 | 
| -
 | 
| -	# FP 
 | 
| -	movl	20(%esp),%edx
 | 
| -	rorl	$1,%esi
 | 
| -	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
 | 
| -.globl	_DES_encrypt2
 | 
| -.align	4
 | 
| -_DES_encrypt2:
 | 
| -L_DES_encrypt2_begin:
 | 
| -	pushl	%esi
 | 
| -	pushl	%edi
 | 
| -
 | 
| -	# Load the 2 words 
 | 
| -	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
 | 
| -	call	L003pic_point
 | 
| -L003pic_point:
 | 
| -	popl	%ebp
 | 
| -	leal	_DES_SPtrans-L003pic_point(%ebp),%ebp
 | 
| -	movl	24(%esp),%ecx
 | 
| -	cmpl	$0,%ebx
 | 
| -	je	L004decrypt
 | 
| -	call	__x86_DES_encrypt
 | 
| -	jmp	L005done
 | 
| -L004decrypt:
 | 
| -	call	__x86_DES_decrypt
 | 
| -L005done:
 | 
| -
 | 
| -	# Fixup 
 | 
| -	rorl	$3,%edi
 | 
| -	movl	20(%esp),%eax
 | 
| -	rorl	$3,%esi
 | 
| -	movl	%edi,(%eax)
 | 
| -	movl	%esi,4(%eax)
 | 
| -	popl	%ebp
 | 
| -	popl	%ebx
 | 
| -	popl	%edi
 | 
| -	popl	%esi
 | 
| -	ret
 | 
| -.globl	_DES_encrypt3
 | 
| -.align	4
 | 
| -_DES_encrypt3:
 | 
| -L_DES_encrypt3_begin:
 | 
| -	pushl	%ebx
 | 
| -	movl	8(%esp),%ebx
 | 
| -	pushl	%ebp
 | 
| -	pushl	%esi
 | 
| -	pushl	%edi
 | 
| -
 | 
| -	# Load the data words 
 | 
| -	movl	(%ebx),%edi
 | 
| -	movl	4(%ebx),%esi
 | 
| -	subl	$12,%esp
 | 
| -
 | 
| -	# IP 
 | 
| -	roll	$4,%edi
 | 
| -	movl	%edi,%edx
 | 
| -	xorl	%esi,%edi
 | 
| -	andl	$0xf0f0f0f0,%edi
 | 
| -	xorl	%edi,%edx
 | 
| -	xorl	%edi,%esi
 | 
| -
 | 
| -	roll	$20,%esi
 | 
| -	movl	%esi,%edi
 | 
| -	xorl	%edx,%esi
 | 
| -	andl	$0xfff0000f,%esi
 | 
| -	xorl	%esi,%edi
 | 
| -	xorl	%esi,%edx
 | 
| -
 | 
| -	roll	$14,%edi
 | 
| -	movl	%edi,%esi
 | 
| -	xorl	%edx,%edi
 | 
| -	andl	$0x33333333,%edi
 | 
| -	xorl	%edi,%esi
 | 
| -	xorl	%edi,%edx
 | 
| -
 | 
| -	roll	$22,%edx
 | 
| -	movl	%edx,%edi
 | 
| -	xorl	%esi,%edx
 | 
| -	andl	$0x03fc03fc,%edx
 | 
| -	xorl	%edx,%edi
 | 
| -	xorl	%edx,%esi
 | 
| -
 | 
| -	roll	$9,%edi
 | 
| -	movl	%edi,%edx
 | 
| -	xorl	%esi,%edi
 | 
| -	andl	$0xaaaaaaaa,%edi
 | 
| -	xorl	%edi,%edx
 | 
| -	xorl	%edi,%esi
 | 
| -
 | 
| -	rorl	$3,%edx
 | 
| -	rorl	$2,%esi
 | 
| -	movl	%esi,4(%ebx)
 | 
| -	movl	36(%esp),%eax
 | 
| -	movl	%edx,(%ebx)
 | 
| -	movl	40(%esp),%edi
 | 
| -	movl	44(%esp),%esi
 | 
| -	movl	$1,8(%esp)
 | 
| -	movl	%eax,4(%esp)
 | 
| -	movl	%ebx,(%esp)
 | 
| -	call	L_DES_encrypt2_begin
 | 
| -	movl	$0,8(%esp)
 | 
| -	movl	%edi,4(%esp)
 | 
| -	movl	%ebx,(%esp)
 | 
| -	call	L_DES_encrypt2_begin
 | 
| -	movl	$1,8(%esp)
 | 
| -	movl	%esi,4(%esp)
 | 
| -	movl	%ebx,(%esp)
 | 
| -	call	L_DES_encrypt2_begin
 | 
| -	addl	$12,%esp
 | 
| -	movl	(%ebx),%edi
 | 
| -	movl	4(%ebx),%esi
 | 
| -
 | 
| -	# FP 
 | 
| -	roll	$2,%esi
 | 
| -	roll	$3,%edi
 | 
| -	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,(%ebx)
 | 
| -	movl	%esi,4(%ebx)
 | 
| -	popl	%edi
 | 
| -	popl	%esi
 | 
| -	popl	%ebp
 | 
| -	popl	%ebx
 | 
| -	ret
 | 
| -.globl	_DES_decrypt3
 | 
| -.align	4
 | 
| -_DES_decrypt3:
 | 
| -L_DES_decrypt3_begin:
 | 
| -	pushl	%ebx
 | 
| -	movl	8(%esp),%ebx
 | 
| -	pushl	%ebp
 | 
| -	pushl	%esi
 | 
| -	pushl	%edi
 | 
| -
 | 
| -	# Load the data words 
 | 
| -	movl	(%ebx),%edi
 | 
| -	movl	4(%ebx),%esi
 | 
| -	subl	$12,%esp
 | 
| -
 | 
| -	# IP 
 | 
| -	roll	$4,%edi
 | 
| -	movl	%edi,%edx
 | 
| -	xorl	%esi,%edi
 | 
| -	andl	$0xf0f0f0f0,%edi
 | 
| -	xorl	%edi,%edx
 | 
| -	xorl	%edi,%esi
 | 
| -
 | 
| -	roll	$20,%esi
 | 
| -	movl	%esi,%edi
 | 
| -	xorl	%edx,%esi
 | 
| -	andl	$0xfff0000f,%esi
 | 
| -	xorl	%esi,%edi
 | 
| -	xorl	%esi,%edx
 | 
| -
 | 
| -	roll	$14,%edi
 | 
| -	movl	%edi,%esi
 | 
| -	xorl	%edx,%edi
 | 
| -	andl	$0x33333333,%edi
 | 
| -	xorl	%edi,%esi
 | 
| -	xorl	%edi,%edx
 | 
| -
 | 
| -	roll	$22,%edx
 | 
| -	movl	%edx,%edi
 | 
| -	xorl	%esi,%edx
 | 
| -	andl	$0x03fc03fc,%edx
 | 
| -	xorl	%edx,%edi
 | 
| -	xorl	%edx,%esi
 | 
| -
 | 
| -	roll	$9,%edi
 | 
| -	movl	%edi,%edx
 | 
| -	xorl	%esi,%edi
 | 
| -	andl	$0xaaaaaaaa,%edi
 | 
| -	xorl	%edi,%edx
 | 
| -	xorl	%edi,%esi
 | 
| -
 | 
| -	rorl	$3,%edx
 | 
| -	rorl	$2,%esi
 | 
| -	movl	%esi,4(%ebx)
 | 
| -	movl	36(%esp),%esi
 | 
| -	movl	%edx,(%ebx)
 | 
| -	movl	40(%esp),%edi
 | 
| -	movl	44(%esp),%eax
 | 
| -	movl	$0,8(%esp)
 | 
| -	movl	%eax,4(%esp)
 | 
| -	movl	%ebx,(%esp)
 | 
| -	call	L_DES_encrypt2_begin
 | 
| -	movl	$1,8(%esp)
 | 
| -	movl	%edi,4(%esp)
 | 
| -	movl	%ebx,(%esp)
 | 
| -	call	L_DES_encrypt2_begin
 | 
| -	movl	$0,8(%esp)
 | 
| -	movl	%esi,4(%esp)
 | 
| -	movl	%ebx,(%esp)
 | 
| -	call	L_DES_encrypt2_begin
 | 
| -	addl	$12,%esp
 | 
| -	movl	(%ebx),%edi
 | 
| -	movl	4(%ebx),%esi
 | 
| -
 | 
| -	# FP 
 | 
| -	roll	$2,%esi
 | 
| -	roll	$3,%edi
 | 
| -	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,(%ebx)
 | 
| -	movl	%esi,4(%ebx)
 | 
| -	popl	%edi
 | 
| -	popl	%esi
 | 
| -	popl	%ebp
 | 
| -	popl	%ebx
 | 
| -	ret
 | 
| -.globl	_DES_ncbc_encrypt
 | 
| -.align	4
 | 
| -_DES_ncbc_encrypt:
 | 
| -L_DES_ncbc_encrypt_begin:
 | 
| -
 | 
| -	pushl	%ebp
 | 
| -	pushl	%ebx
 | 
| -	pushl	%esi
 | 
| -	pushl	%edi
 | 
| -	movl	28(%esp),%ebp
 | 
| -	# getting iv ptr from parameter 4 
 | 
| -	movl	36(%esp),%ebx
 | 
| -	movl	(%ebx),%esi
 | 
| -	movl	4(%ebx),%edi
 | 
| -	pushl	%edi
 | 
| -	pushl	%esi
 | 
| -	pushl	%edi
 | 
| -	pushl	%esi
 | 
| -	movl	%esp,%ebx
 | 
| -	movl	36(%esp),%esi
 | 
| -	movl	40(%esp),%edi
 | 
| -	# getting encrypt flag from parameter 5 
 | 
| -	movl	56(%esp),%ecx
 | 
| -	# get and push parameter 5 
 | 
| -	pushl	%ecx
 | 
| -	# get and push parameter 3 
 | 
| -	movl	52(%esp),%eax
 | 
| -	pushl	%eax
 | 
| -	pushl	%ebx
 | 
| -	cmpl	$0,%ecx
 | 
| -	jz	L006decrypt
 | 
| -	andl	$4294967288,%ebp
 | 
| -	movl	12(%esp),%eax
 | 
| -	movl	16(%esp),%ebx
 | 
| -	jz	L007encrypt_finish
 | 
| -L008encrypt_loop:
 | 
| -	movl	(%esi),%ecx
 | 
| -	movl	4(%esi),%edx
 | 
| -	xorl	%ecx,%eax
 | 
| -	xorl	%edx,%ebx
 | 
| -	movl	%eax,12(%esp)
 | 
| -	movl	%ebx,16(%esp)
 | 
| -	call	L_DES_encrypt1_begin
 | 
| -	movl	12(%esp),%eax
 | 
| -	movl	16(%esp),%ebx
 | 
| -	movl	%eax,(%edi)
 | 
| -	movl	%ebx,4(%edi)
 | 
| -	addl	$8,%esi
 | 
| -	addl	$8,%edi
 | 
| -	subl	$8,%ebp
 | 
| -	jnz	L008encrypt_loop
 | 
| -L007encrypt_finish:
 | 
| -	movl	56(%esp),%ebp
 | 
| -	andl	$7,%ebp
 | 
| -	jz	L009finish
 | 
| -	call	L010PIC_point
 | 
| -L010PIC_point:
 | 
| -	popl	%edx
 | 
| -	leal	L011cbc_enc_jmp_table-L010PIC_point(%edx),%ecx
 | 
| -	movl	(%ecx,%ebp,4),%ebp
 | 
| -	addl	%edx,%ebp
 | 
| -	xorl	%ecx,%ecx
 | 
| -	xorl	%edx,%edx
 | 
| -	jmp	*%ebp
 | 
| -L012ej7:
 | 
| -	movb	6(%esi),%dh
 | 
| -	shll	$8,%edx
 | 
| -L013ej6:
 | 
| -	movb	5(%esi),%dh
 | 
| -L014ej5:
 | 
| -	movb	4(%esi),%dl
 | 
| -L015ej4:
 | 
| -	movl	(%esi),%ecx
 | 
| -	jmp	L016ejend
 | 
| -L017ej3:
 | 
| -	movb	2(%esi),%ch
 | 
| -	shll	$8,%ecx
 | 
| -L018ej2:
 | 
| -	movb	1(%esi),%ch
 | 
| -L019ej1:
 | 
| -	movb	(%esi),%cl
 | 
| -L016ejend:
 | 
| -	xorl	%ecx,%eax
 | 
| -	xorl	%edx,%ebx
 | 
| -	movl	%eax,12(%esp)
 | 
| -	movl	%ebx,16(%esp)
 | 
| -	call	L_DES_encrypt1_begin
 | 
| -	movl	12(%esp),%eax
 | 
| -	movl	16(%esp),%ebx
 | 
| -	movl	%eax,(%edi)
 | 
| -	movl	%ebx,4(%edi)
 | 
| -	jmp	L009finish
 | 
| -L006decrypt:
 | 
| -	andl	$4294967288,%ebp
 | 
| -	movl	20(%esp),%eax
 | 
| -	movl	24(%esp),%ebx
 | 
| -	jz	L020decrypt_finish
 | 
| -L021decrypt_loop:
 | 
| -	movl	(%esi),%eax
 | 
| -	movl	4(%esi),%ebx
 | 
| -	movl	%eax,12(%esp)
 | 
| -	movl	%ebx,16(%esp)
 | 
| -	call	L_DES_encrypt1_begin
 | 
| -	movl	12(%esp),%eax
 | 
| -	movl	16(%esp),%ebx
 | 
| -	movl	20(%esp),%ecx
 | 
| -	movl	24(%esp),%edx
 | 
| -	xorl	%eax,%ecx
 | 
| -	xorl	%ebx,%edx
 | 
| -	movl	(%esi),%eax
 | 
| -	movl	4(%esi),%ebx
 | 
| -	movl	%ecx,(%edi)
 | 
| -	movl	%edx,4(%edi)
 | 
| -	movl	%eax,20(%esp)
 | 
| -	movl	%ebx,24(%esp)
 | 
| -	addl	$8,%esi
 | 
| -	addl	$8,%edi
 | 
| -	subl	$8,%ebp
 | 
| -	jnz	L021decrypt_loop
 | 
| -L020decrypt_finish:
 | 
| -	movl	56(%esp),%ebp
 | 
| -	andl	$7,%ebp
 | 
| -	jz	L009finish
 | 
| -	movl	(%esi),%eax
 | 
| -	movl	4(%esi),%ebx
 | 
| -	movl	%eax,12(%esp)
 | 
| -	movl	%ebx,16(%esp)
 | 
| -	call	L_DES_encrypt1_begin
 | 
| -	movl	12(%esp),%eax
 | 
| -	movl	16(%esp),%ebx
 | 
| -	movl	20(%esp),%ecx
 | 
| -	movl	24(%esp),%edx
 | 
| -	xorl	%eax,%ecx
 | 
| -	xorl	%ebx,%edx
 | 
| -	movl	(%esi),%eax
 | 
| -	movl	4(%esi),%ebx
 | 
| -L022dj7:
 | 
| -	rorl	$16,%edx
 | 
| -	movb	%dl,6(%edi)
 | 
| -	shrl	$16,%edx
 | 
| -L023dj6:
 | 
| -	movb	%dh,5(%edi)
 | 
| -L024dj5:
 | 
| -	movb	%dl,4(%edi)
 | 
| -L025dj4:
 | 
| -	movl	%ecx,(%edi)
 | 
| -	jmp	L026djend
 | 
| -L027dj3:
 | 
| -	rorl	$16,%ecx
 | 
| -	movb	%cl,2(%edi)
 | 
| -	shll	$16,%ecx
 | 
| -L028dj2:
 | 
| -	movb	%ch,1(%esi)
 | 
| -L029dj1:
 | 
| -	movb	%cl,(%esi)
 | 
| -L026djend:
 | 
| -	jmp	L009finish
 | 
| -L009finish:
 | 
| -	movl	64(%esp),%ecx
 | 
| -	addl	$28,%esp
 | 
| -	movl	%eax,(%ecx)
 | 
| -	movl	%ebx,4(%ecx)
 | 
| -	popl	%edi
 | 
| -	popl	%esi
 | 
| -	popl	%ebx
 | 
| -	popl	%ebp
 | 
| -	ret
 | 
| -.align	6,0x90
 | 
| -L011cbc_enc_jmp_table:
 | 
| -.long	0
 | 
| -.long	L019ej1-L010PIC_point
 | 
| -.long	L018ej2-L010PIC_point
 | 
| -.long	L017ej3-L010PIC_point
 | 
| -.long	L015ej4-L010PIC_point
 | 
| -.long	L014ej5-L010PIC_point
 | 
| -.long	L013ej6-L010PIC_point
 | 
| -.long	L012ej7-L010PIC_point
 | 
| -.align	6,0x90
 | 
| -.globl	_DES_ede3_cbc_encrypt
 | 
| -.align	4
 | 
| -_DES_ede3_cbc_encrypt:
 | 
| -L_DES_ede3_cbc_encrypt_begin:
 | 
| -
 | 
| -	pushl	%ebp
 | 
| -	pushl	%ebx
 | 
| -	pushl	%esi
 | 
| -	pushl	%edi
 | 
| -	movl	28(%esp),%ebp
 | 
| -	# getting iv ptr from parameter 6 
 | 
| -	movl	44(%esp),%ebx
 | 
| -	movl	(%ebx),%esi
 | 
| -	movl	4(%ebx),%edi
 | 
| -	pushl	%edi
 | 
| -	pushl	%esi
 | 
| -	pushl	%edi
 | 
| -	pushl	%esi
 | 
| -	movl	%esp,%ebx
 | 
| -	movl	36(%esp),%esi
 | 
| -	movl	40(%esp),%edi
 | 
| -	# getting encrypt flag from parameter 7 
 | 
| -	movl	64(%esp),%ecx
 | 
| -	# get and push parameter 5 
 | 
| -	movl	56(%esp),%eax
 | 
| -	pushl	%eax
 | 
| -	# get and push parameter 4 
 | 
| -	movl	56(%esp),%eax
 | 
| -	pushl	%eax
 | 
| -	# get and push parameter 3 
 | 
| -	movl	56(%esp),%eax
 | 
| -	pushl	%eax
 | 
| -	pushl	%ebx
 | 
| -	cmpl	$0,%ecx
 | 
| -	jz	L030decrypt
 | 
| -	andl	$4294967288,%ebp
 | 
| -	movl	16(%esp),%eax
 | 
| -	movl	20(%esp),%ebx
 | 
| -	jz	L031encrypt_finish
 | 
| -L032encrypt_loop:
 | 
| -	movl	(%esi),%ecx
 | 
| -	movl	4(%esi),%edx
 | 
| -	xorl	%ecx,%eax
 | 
| -	xorl	%edx,%ebx
 | 
| -	movl	%eax,16(%esp)
 | 
| -	movl	%ebx,20(%esp)
 | 
| -	call	L_DES_encrypt3_begin
 | 
| -	movl	16(%esp),%eax
 | 
| -	movl	20(%esp),%ebx
 | 
| -	movl	%eax,(%edi)
 | 
| -	movl	%ebx,4(%edi)
 | 
| -	addl	$8,%esi
 | 
| -	addl	$8,%edi
 | 
| -	subl	$8,%ebp
 | 
| -	jnz	L032encrypt_loop
 | 
| -L031encrypt_finish:
 | 
| -	movl	60(%esp),%ebp
 | 
| -	andl	$7,%ebp
 | 
| -	jz	L033finish
 | 
| -	call	L034PIC_point
 | 
| -L034PIC_point:
 | 
| -	popl	%edx
 | 
| -	leal	L035cbc_enc_jmp_table-L034PIC_point(%edx),%ecx
 | 
| -	movl	(%ecx,%ebp,4),%ebp
 | 
| -	addl	%edx,%ebp
 | 
| -	xorl	%ecx,%ecx
 | 
| -	xorl	%edx,%edx
 | 
| -	jmp	*%ebp
 | 
| -L036ej7:
 | 
| -	movb	6(%esi),%dh
 | 
| -	shll	$8,%edx
 | 
| -L037ej6:
 | 
| -	movb	5(%esi),%dh
 | 
| -L038ej5:
 | 
| -	movb	4(%esi),%dl
 | 
| -L039ej4:
 | 
| -	movl	(%esi),%ecx
 | 
| -	jmp	L040ejend
 | 
| -L041ej3:
 | 
| -	movb	2(%esi),%ch
 | 
| -	shll	$8,%ecx
 | 
| -L042ej2:
 | 
| -	movb	1(%esi),%ch
 | 
| -L043ej1:
 | 
| -	movb	(%esi),%cl
 | 
| -L040ejend:
 | 
| -	xorl	%ecx,%eax
 | 
| -	xorl	%edx,%ebx
 | 
| -	movl	%eax,16(%esp)
 | 
| -	movl	%ebx,20(%esp)
 | 
| -	call	L_DES_encrypt3_begin
 | 
| -	movl	16(%esp),%eax
 | 
| -	movl	20(%esp),%ebx
 | 
| -	movl	%eax,(%edi)
 | 
| -	movl	%ebx,4(%edi)
 | 
| -	jmp	L033finish
 | 
| -L030decrypt:
 | 
| -	andl	$4294967288,%ebp
 | 
| -	movl	24(%esp),%eax
 | 
| -	movl	28(%esp),%ebx
 | 
| -	jz	L044decrypt_finish
 | 
| -L045decrypt_loop:
 | 
| -	movl	(%esi),%eax
 | 
| -	movl	4(%esi),%ebx
 | 
| -	movl	%eax,16(%esp)
 | 
| -	movl	%ebx,20(%esp)
 | 
| -	call	L_DES_decrypt3_begin
 | 
| -	movl	16(%esp),%eax
 | 
| -	movl	20(%esp),%ebx
 | 
| -	movl	24(%esp),%ecx
 | 
| -	movl	28(%esp),%edx
 | 
| -	xorl	%eax,%ecx
 | 
| -	xorl	%ebx,%edx
 | 
| -	movl	(%esi),%eax
 | 
| -	movl	4(%esi),%ebx
 | 
| -	movl	%ecx,(%edi)
 | 
| -	movl	%edx,4(%edi)
 | 
| -	movl	%eax,24(%esp)
 | 
| -	movl	%ebx,28(%esp)
 | 
| -	addl	$8,%esi
 | 
| -	addl	$8,%edi
 | 
| -	subl	$8,%ebp
 | 
| -	jnz	L045decrypt_loop
 | 
| -L044decrypt_finish:
 | 
| -	movl	60(%esp),%ebp
 | 
| -	andl	$7,%ebp
 | 
| -	jz	L033finish
 | 
| -	movl	(%esi),%eax
 | 
| -	movl	4(%esi),%ebx
 | 
| -	movl	%eax,16(%esp)
 | 
| -	movl	%ebx,20(%esp)
 | 
| -	call	L_DES_decrypt3_begin
 | 
| -	movl	16(%esp),%eax
 | 
| -	movl	20(%esp),%ebx
 | 
| -	movl	24(%esp),%ecx
 | 
| -	movl	28(%esp),%edx
 | 
| -	xorl	%eax,%ecx
 | 
| -	xorl	%ebx,%edx
 | 
| -	movl	(%esi),%eax
 | 
| -	movl	4(%esi),%ebx
 | 
| -L046dj7:
 | 
| -	rorl	$16,%edx
 | 
| -	movb	%dl,6(%edi)
 | 
| -	shrl	$16,%edx
 | 
| -L047dj6:
 | 
| -	movb	%dh,5(%edi)
 | 
| -L048dj5:
 | 
| -	movb	%dl,4(%edi)
 | 
| -L049dj4:
 | 
| -	movl	%ecx,(%edi)
 | 
| -	jmp	L050djend
 | 
| -L051dj3:
 | 
| -	rorl	$16,%ecx
 | 
| -	movb	%cl,2(%edi)
 | 
| -	shll	$16,%ecx
 | 
| -L052dj2:
 | 
| -	movb	%ch,1(%esi)
 | 
| -L053dj1:
 | 
| -	movb	%cl,(%esi)
 | 
| -L050djend:
 | 
| -	jmp	L033finish
 | 
| -L033finish:
 | 
| -	movl	76(%esp),%ecx
 | 
| -	addl	$32,%esp
 | 
| -	movl	%eax,(%ecx)
 | 
| -	movl	%ebx,4(%ecx)
 | 
| -	popl	%edi
 | 
| -	popl	%esi
 | 
| -	popl	%ebx
 | 
| -	popl	%ebp
 | 
| -	ret
 | 
| -.align	6,0x90
 | 
| -L035cbc_enc_jmp_table:
 | 
| -.long	0
 | 
| -.long	L043ej1-L034PIC_point
 | 
| -.long	L042ej2-L034PIC_point
 | 
| -.long	L041ej3-L034PIC_point
 | 
| -.long	L039ej4-L034PIC_point
 | 
| -.long	L038ej5-L034PIC_point
 | 
| -.long	L037ej6-L034PIC_point
 | 
| -.long	L036ej7-L034PIC_point
 | 
| -.align	6,0x90
 | 
| -.align	6,0x90
 | 
| -_DES_SPtrans:
 | 
| -.long	34080768,524288,33554434,34080770
 | 
| -.long	33554432,526338,524290,33554434
 | 
| -.long	526338,34080768,34078720,2050
 | 
| -.long	33556482,33554432,0,524290
 | 
| -.long	524288,2,33556480,526336
 | 
| -.long	34080770,34078720,2050,33556480
 | 
| -.long	2,2048,526336,34078722
 | 
| -.long	2048,33556482,34078722,0
 | 
| -.long	0,34080770,33556480,524290
 | 
| -.long	34080768,524288,2050,33556480
 | 
| -.long	34078722,2048,526336,33554434
 | 
| -.long	526338,2,33554434,34078720
 | 
| -.long	34080770,526336,34078720,33556482
 | 
| -.long	33554432,2050,524290,0
 | 
| -.long	524288,33554432,33556482,34080768
 | 
| -.long	2,34078722,2048,526338
 | 
| -.long	1074823184,0,1081344,1074790400
 | 
| -.long	1073741840,32784,1073774592,1081344
 | 
| -.long	32768,1074790416,16,1073774592
 | 
| -.long	1048592,1074823168,1074790400,16
 | 
| -.long	1048576,1073774608,1074790416,32768
 | 
| -.long	1081360,1073741824,0,1048592
 | 
| -.long	1073774608,1081360,1074823168,1073741840
 | 
| -.long	1073741824,1048576,32784,1074823184
 | 
| -.long	1048592,1074823168,1073774592,1081360
 | 
| -.long	1074823184,1048592,1073741840,0
 | 
| -.long	1073741824,32784,1048576,1074790416
 | 
| -.long	32768,1073741824,1081360,1073774608
 | 
| -.long	1074823168,32768,0,1073741840
 | 
| -.long	16,1074823184,1081344,1074790400
 | 
| -.long	1074790416,1048576,32784,1073774592
 | 
| -.long	1073774608,16,1074790400,1081344
 | 
| -.long	67108865,67371264,256,67109121
 | 
| -.long	262145,67108864,67109121,262400
 | 
| -.long	67109120,262144,67371008,1
 | 
| -.long	67371265,257,1,67371009
 | 
| -.long	0,262145,67371264,256
 | 
| -.long	257,67371265,262144,67108865
 | 
| -.long	67371009,67109120,262401,67371008
 | 
| -.long	262400,0,67108864,262401
 | 
| -.long	67371264,256,1,262144
 | 
| -.long	257,262145,67371008,67109121
 | 
| -.long	0,67371264,262400,67371009
 | 
| -.long	262145,67108864,67371265,1
 | 
| -.long	262401,67108865,67108864,67371265
 | 
| -.long	262144,67109120,67109121,262400
 | 
| -.long	67109120,0,67371009,257
 | 
| -.long	67108865,262401,256,67371008
 | 
| -.long	4198408,268439552,8,272633864
 | 
| -.long	0,272629760,268439560,4194312
 | 
| -.long	272633856,268435464,268435456,4104
 | 
| -.long	268435464,4198408,4194304,268435456
 | 
| -.long	272629768,4198400,4096,8
 | 
| -.long	4198400,268439560,272629760,4096
 | 
| -.long	4104,0,4194312,272633856
 | 
| -.long	268439552,272629768,272633864,4194304
 | 
| -.long	272629768,4104,4194304,268435464
 | 
| -.long	4198400,268439552,8,272629760
 | 
| -.long	268439560,0,4096,4194312
 | 
| -.long	0,272629768,272633856,4096
 | 
| -.long	268435456,272633864,4198408,4194304
 | 
| -.long	272633864,8,268439552,4198408
 | 
| -.long	4194312,4198400,272629760,268439560
 | 
| -.long	4104,268435456,268435464,272633856
 | 
| -.long	134217728,65536,1024,134284320
 | 
| -.long	134283296,134218752,66592,134283264
 | 
| -.long	65536,32,134217760,66560
 | 
| -.long	134218784,134283296,134284288,0
 | 
| -.long	66560,134217728,65568,1056
 | 
| -.long	134218752,66592,0,134217760
 | 
| -.long	32,134218784,134284320,65568
 | 
| -.long	134283264,1024,1056,134284288
 | 
| -.long	134284288,134218784,65568,134283264
 | 
| -.long	65536,32,134217760,134218752
 | 
| -.long	134217728,66560,134284320,0
 | 
| -.long	66592,134217728,1024,65568
 | 
| -.long	134218784,1024,0,134284320
 | 
| -.long	134283296,134284288,1056,65536
 | 
| -.long	66560,134283296,134218752,1056
 | 
| -.long	32,66592,134283264,134217760
 | 
| -.long	2147483712,2097216,0,2149588992
 | 
| -.long	2097216,8192,2147491904,2097152
 | 
| -.long	8256,2149589056,2105344,2147483648
 | 
| -.long	2147491840,2147483712,2149580800,2105408
 | 
| -.long	2097152,2147491904,2149580864,0
 | 
| -.long	8192,64,2149588992,2149580864
 | 
| -.long	2149589056,2149580800,2147483648,8256
 | 
| -.long	64,2105344,2105408,2147491840
 | 
| -.long	8256,2147483648,2147491840,2105408
 | 
| -.long	2149588992,2097216,0,2147491840
 | 
| -.long	2147483648,8192,2149580864,2097152
 | 
| -.long	2097216,2149589056,2105344,64
 | 
| -.long	2149589056,2105344,2097152,2147491904
 | 
| -.long	2147483712,2149580800,2105408,0
 | 
| -.long	8192,2147483712,2147491904,2149588992
 | 
| -.long	2149580800,8256,64,2149580864
 | 
| -.long	16384,512,16777728,16777220
 | 
| -.long	16794116,16388,16896,0
 | 
| -.long	16777216,16777732,516,16793600
 | 
| -.long	4,16794112,16793600,516
 | 
| -.long	16777732,16384,16388,16794116
 | 
| -.long	0,16777728,16777220,16896
 | 
| -.long	16793604,16900,16794112,4
 | 
| -.long	16900,16793604,512,16777216
 | 
| -.long	16900,16793600,16793604,516
 | 
| -.long	16384,512,16777216,16793604
 | 
| -.long	16777732,16900,16896,0
 | 
| -.long	512,16777220,4,16777728
 | 
| -.long	0,16777732,16777728,16896
 | 
| -.long	516,16384,16794116,16777216
 | 
| -.long	16794112,4,16388,16794116
 | 
| -.long	16777220,16794112,16793600,16388
 | 
| -.long	545259648,545390592,131200,0
 | 
| -.long	537001984,8388736,545259520,545390720
 | 
| -.long	128,536870912,8519680,131200
 | 
| -.long	8519808,537002112,536871040,545259520
 | 
| -.long	131072,8519808,8388736,537001984
 | 
| -.long	545390720,536871040,0,8519680
 | 
| -.long	536870912,8388608,537002112,545259648
 | 
| -.long	8388608,131072,545390592,128
 | 
| -.long	8388608,131072,536871040,545390720
 | 
| -.long	131200,536870912,0,8519680
 | 
| -.long	545259648,537002112,537001984,8388736
 | 
| -.long	545390592,128,8388736,537001984
 | 
| -.long	545390720,8388608,545259520,536871040
 | 
| -.long	8519680,131200,537002112,545259520
 | 
| -.long	128,545390592,8519808,0
 | 
| -.long	536870912,545259648,131072,8519808
 | 
| 
 |