diff options
author | jkim <jkim@FreeBSD.org> | 2012-07-12 19:30:53 +0000 |
---|---|---|
committer | jkim <jkim@FreeBSD.org> | 2012-07-12 19:30:53 +0000 |
commit | e393e47b1e23744a7d0ed999afb5d137070f5f8f (patch) | |
tree | 9739a803477c4610ec6628d914bdcc55fbb3602a /secure/lib/libcrypto/i386/des-586.s | |
parent | a8b00dea2cde4c3d96e6ed1de530ddff21012266 (diff) | |
parent | 532b4084cb8cac5e6d91d42aa6a497dd4ba4a4f5 (diff) | |
download | FreeBSD-src-e393e47b1e23744a7d0ed999afb5d137070f5f8f.zip FreeBSD-src-e393e47b1e23744a7d0ed999afb5d137070f5f8f.tar.gz |
Merge OpenSSL 1.0.1c.
Approved by: benl (maintainer)
Diffstat (limited to 'secure/lib/libcrypto/i386/des-586.s')
-rw-r--r-- | secure/lib/libcrypto/i386/des-586.s | 4334 |
1 files changed, 1737 insertions, 2597 deletions
diff --git a/secure/lib/libcrypto/i386/des-586.s b/secure/lib/libcrypto/i386/des-586.s index b761290..868b2ca 100644 --- a/secure/lib/libcrypto/i386/des-586.s +++ b/secure/lib/libcrypto/i386/des-586.s @@ -1,2698 +1,1838 @@ # $FreeBSD$ +.file "des-586.s" +.text +.globl DES_SPtrans +.type _x86_DES_encrypt,@function +.align 16 +_x86_DES_encrypt: + pushl %ecx + 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 + + 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 + + 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 + + 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 + + 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 + + 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 + + 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 + + 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 + + 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 + + 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 + + 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 + + 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 + + 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 + + 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 + + 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 + + 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 +.size _x86_DES_encrypt,.-_x86_DES_encrypt +.type _x86_DES_decrypt,@function +.align 16 +_x86_DES_decrypt: + pushl %ecx - - - - - .file "des-586.s" - .version "01.01" -gcc2_compiled.: -.text - .align 16 -.globl DES_encrypt1 - .type DES_encrypt1,@function + 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 + + 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 + + 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 + + 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 + + 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 + + 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 + + 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 + + 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 + + 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 + + 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 + + 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 + + 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 + + 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 + + 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 + + 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 + + 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 +.size _x86_DES_decrypt,.-_x86_DES_decrypt +.globl DES_encrypt1 +.type DES_encrypt1,@function +.align 16 DES_encrypt1: +.L_DES_encrypt1_begin: pushl %esi pushl %edi - movl 12(%esp), %esi - xorl %ecx, %ecx + 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) + 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 + + 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: + + + 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 -.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 +.size DES_encrypt1,.-.L_DES_encrypt1_begin +.globl DES_encrypt2 +.type DES_encrypt2,@function +.align 16 DES_encrypt2: +.L_DES_encrypt2_begin: pushl %esi pushl %edi - movl 12(%esp), %eax - xorl %ecx, %ecx + 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,%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 .L003end -.L002start_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 -.L003end: - - - rorl $3, %edi - movl 20(%esp), %eax - rorl $3, %esi - movl %edi, (%eax) - movl %esi, 4(%eax) + 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: + + + 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 -.L_DES_encrypt2_end: - .size DES_encrypt2,.L_DES_encrypt2_end-DES_encrypt2 -.ident "desasm.pl" -.text - .align 16 -.globl DES_encrypt3 - .type DES_encrypt3,@function +.size DES_encrypt2,.-.L_DES_encrypt2_begin +.globl DES_encrypt3 +.type DES_encrypt3,@function +.align 16 DES_encrypt3: +.L_DES_encrypt3_begin: pushl %ebx - movl 8(%esp), %ebx + movl 8(%esp),%ebx pushl %ebp pushl %esi pushl %edi - movl (%ebx), %edi - movl 4(%ebx), %esi - subl $12, %esp - - - 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 DES_encrypt2 - movl $0, 8(%esp) - movl %edi, 4(%esp) - movl %ebx, (%esp) - call DES_encrypt2 - movl $1, 8(%esp) - movl %esi, 4(%esp) - movl %ebx, (%esp) - call DES_encrypt2 - addl $12, %esp - movl (%ebx), %edi - movl 4(%ebx), %esi - - - 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) + movl (%ebx),%edi + movl 4(%ebx),%esi + subl $12,%esp + + + 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 + + + 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 -.L_DES_encrypt3_end: - .size DES_encrypt3,.L_DES_encrypt3_end-DES_encrypt3 -.ident "desasm.pl" -.text - .align 16 -.globl DES_decrypt3 - .type DES_decrypt3,@function +.size DES_encrypt3,.-.L_DES_encrypt3_begin +.globl DES_decrypt3 +.type DES_decrypt3,@function +.align 16 DES_decrypt3: +.L_DES_decrypt3_begin: pushl %ebx - movl 8(%esp), %ebx + movl 8(%esp),%ebx pushl %ebp pushl %esi pushl %edi - movl (%ebx), %edi - movl 4(%ebx), %esi - subl $12, %esp - - - 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 DES_encrypt2 - movl $1, 8(%esp) - movl %edi, 4(%esp) - movl %ebx, (%esp) - call DES_encrypt2 - movl $0, 8(%esp) - movl %esi, 4(%esp) - movl %ebx, (%esp) - call DES_encrypt2 - addl $12, %esp - movl (%ebx), %edi - movl 4(%ebx), %esi - - - 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) + movl (%ebx),%edi + movl 4(%ebx),%esi + subl $12,%esp + + + 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 + + + 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 -.L_DES_decrypt3_end: - .size DES_decrypt3,.L_DES_decrypt3_end-DES_decrypt3 -.ident "desasm.pl" -.text - .align 16 -.globl DES_ncbc_encrypt - .type DES_ncbc_encrypt,@function +.size DES_decrypt3,.-.L_DES_decrypt3_begin +.globl DES_ncbc_encrypt +.type DES_ncbc_encrypt,@function +.align 16 DES_ncbc_encrypt: +.L_DES_ncbc_encrypt_begin: pushl %ebp pushl %ebx pushl %esi pushl %edi - movl 28(%esp), %ebp + movl 28(%esp),%ebp - movl 36(%esp), %ebx - movl (%ebx), %esi - movl 4(%ebx), %edi + 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 + movl %esp,%ebx + movl 36(%esp),%esi + movl 40(%esp),%edi - movl 56(%esp), %ecx + movl 56(%esp),%ecx pushl %ecx - movl 52(%esp), %eax + movl 52(%esp),%eax pushl %eax pushl %ebx - cmpl $0, %ecx - jz .L004decrypt - andl $4294967288, %ebp - movl 12(%esp), %eax - movl 16(%esp), %ebx - jz .L005encrypt_finish -.L006encrypt_loop: - movl (%esi), %ecx - movl 4(%esi), %edx - xorl %ecx, %eax - xorl %edx, %ebx - movl %eax, 12(%esp) - movl %ebx, 16(%esp) - call DES_encrypt1 - 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 .L006encrypt_loop -.L005encrypt_finish: - movl 56(%esp), %ebp - andl $7, %ebp - jz .L007finish - call .L008PIC_point -.L008PIC_point: + 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 .L009cbc_enc_jmp_table-.L008PIC_point(%edx),%ecx - movl (%ecx,%ebp,4), %ebp - addl %edx, %ebp - xorl %ecx, %ecx - xorl %edx, %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 -.L010ej7: - movb 6(%esi), %dh - sall $8, %edx -.L011ej6: - movb 5(%esi), %dh -.L012ej5: - movb 4(%esi), %dl -.L013ej4: - movl (%esi), %ecx - jmp .L014ejend -.L015ej3: - movb 2(%esi), %ch - sall $8, %ecx -.L016ej2: - movb 1(%esi), %ch -.L017ej1: - movb (%esi), %cl -.L014ejend: - xorl %ecx, %eax - xorl %edx, %ebx - movl %eax, 12(%esp) - movl %ebx, 16(%esp) - call DES_encrypt1 - movl 12(%esp), %eax - movl 16(%esp), %ebx - movl %eax, (%edi) - movl %ebx, 4(%edi) - jmp .L007finish -.align 16 -.L004decrypt: - andl $4294967288, %ebp - movl 20(%esp), %eax - movl 24(%esp), %ebx - jz .L018decrypt_finish -.L019decrypt_loop: - movl (%esi), %eax - movl 4(%esi), %ebx - movl %eax, 12(%esp) - movl %ebx, 16(%esp) - call DES_encrypt1 - 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 .L019decrypt_loop -.L018decrypt_finish: - movl 56(%esp), %ebp - andl $7, %ebp - jz .L007finish - movl (%esi), %eax - movl 4(%esi), %ebx - movl %eax, 12(%esp) - movl %ebx, 16(%esp) - call DES_encrypt1 - 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 -.L020dj7: - rorl $16, %edx - movb %dl, 6(%edi) - shrl $16, %edx -.L021dj6: - movb %dh, 5(%edi) -.L022dj5: - movb %dl, 4(%edi) -.L023dj4: - movl %ecx, (%edi) - jmp .L024djend -.L025dj3: - rorl $16, %ecx - movb %cl, 2(%edi) - sall $16, %ecx -.L026dj2: - movb %ch, 1(%esi) -.L027dj1: - movb %cl, (%esi) -.L024djend: - jmp .L007finish -.align 16 -.L007finish: - movl 64(%esp), %ecx - addl $28, %esp - movl %eax, (%ecx) - movl %ebx, 4(%ecx) +.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 16 -.L009cbc_enc_jmp_table: - .long 0 - .long .L017ej1-.L008PIC_point - .long .L016ej2-.L008PIC_point - .long .L015ej3-.L008PIC_point - .long .L013ej4-.L008PIC_point - .long .L012ej5-.L008PIC_point - .long .L011ej6-.L008PIC_point - .long .L010ej7-.L008PIC_point -.L_DES_ncbc_encrypt_end: - .size DES_ncbc_encrypt,.L_DES_ncbc_encrypt_end-DES_ncbc_encrypt -.ident "desasm.pl" -.text - .align 16 -.globl DES_ede3_cbc_encrypt - .type DES_ede3_cbc_encrypt,@function +.align 64 +.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 64 +.size DES_ncbc_encrypt,.-.L_DES_ncbc_encrypt_begin +.globl DES_ede3_cbc_encrypt +.type DES_ede3_cbc_encrypt,@function +.align 16 DES_ede3_cbc_encrypt: +.L_DES_ede3_cbc_encrypt_begin: pushl %ebp pushl %ebx pushl %esi pushl %edi - movl 28(%esp), %ebp + movl 28(%esp),%ebp - movl 44(%esp), %ebx - movl (%ebx), %esi - movl 4(%ebx), %edi + 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 + movl %esp,%ebx + movl 36(%esp),%esi + movl 40(%esp),%edi - movl 64(%esp), %ecx + movl 64(%esp),%ecx - movl 56(%esp), %eax + movl 56(%esp),%eax pushl %eax - movl 56(%esp), %eax + movl 56(%esp),%eax pushl %eax - movl 56(%esp), %eax + movl 56(%esp),%eax pushl %eax pushl %ebx - cmpl $0, %ecx - jz .L028decrypt - andl $4294967288, %ebp - movl 16(%esp), %eax - movl 20(%esp), %ebx - jz .L029encrypt_finish -.L030encrypt_loop: - movl (%esi), %ecx - movl 4(%esi), %edx - xorl %ecx, %eax - xorl %edx, %ebx - movl %eax, 16(%esp) - movl %ebx, 20(%esp) - call DES_encrypt3 - 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 .L030encrypt_loop -.L029encrypt_finish: - movl 60(%esp), %ebp - andl $7, %ebp - jz .L031finish - call .L032PIC_point -.L032PIC_point: + 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 .L033cbc_enc_jmp_table-.L032PIC_point(%edx),%ecx - movl (%ecx,%ebp,4), %ebp - addl %edx, %ebp - xorl %ecx, %ecx - xorl %edx, %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 -.L034ej7: - movb 6(%esi), %dh - sall $8, %edx -.L035ej6: - movb 5(%esi), %dh -.L036ej5: - movb 4(%esi), %dl -.L037ej4: - movl (%esi), %ecx - jmp .L038ejend -.L039ej3: - movb 2(%esi), %ch - sall $8, %ecx -.L040ej2: - movb 1(%esi), %ch -.L041ej1: - movb (%esi), %cl -.L038ejend: - xorl %ecx, %eax - xorl %edx, %ebx - movl %eax, 16(%esp) - movl %ebx, 20(%esp) - call DES_encrypt3 - movl 16(%esp), %eax - movl 20(%esp), %ebx - movl %eax, (%edi) - movl %ebx, 4(%edi) - jmp .L031finish -.align 16 -.L028decrypt: - andl $4294967288, %ebp - movl 24(%esp), %eax - movl 28(%esp), %ebx - jz .L042decrypt_finish -.L043decrypt_loop: - movl (%esi), %eax - movl 4(%esi), %ebx - movl %eax, 16(%esp) - movl %ebx, 20(%esp) - call DES_decrypt3 - 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 .L043decrypt_loop -.L042decrypt_finish: - movl 60(%esp), %ebp - andl $7, %ebp - jz .L031finish - movl (%esi), %eax - movl 4(%esi), %ebx - movl %eax, 16(%esp) - movl %ebx, 20(%esp) - call DES_decrypt3 - 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 -.L044dj7: - rorl $16, %edx - movb %dl, 6(%edi) - shrl $16, %edx -.L045dj6: - movb %dh, 5(%edi) -.L046dj5: - movb %dl, 4(%edi) -.L047dj4: - movl %ecx, (%edi) - jmp .L048djend -.L049dj3: - rorl $16, %ecx - movb %cl, 2(%edi) - sall $16, %ecx -.L050dj2: - movb %ch, 1(%esi) -.L051dj1: - movb %cl, (%esi) -.L048djend: - jmp .L031finish -.align 16 -.L031finish: - movl 76(%esp), %ecx - addl $32, %esp - movl %eax, (%ecx) - movl %ebx, 4(%ecx) +.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 16 -.L033cbc_enc_jmp_table: - .long 0 - .long .L041ej1-.L032PIC_point - .long .L040ej2-.L032PIC_point - .long .L039ej3-.L032PIC_point - .long .L037ej4-.L032PIC_point - .long .L036ej5-.L032PIC_point - .long .L035ej6-.L032PIC_point - .long .L034ej7-.L032PIC_point -.L_DES_ede3_cbc_encrypt_end: - .size DES_ede3_cbc_encrypt,.L_DES_ede3_cbc_encrypt_end-DES_ede3_cbc_encrypt -.ident "desasm.pl" +.align 64 +.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 64 +.size DES_ede3_cbc_encrypt,.-.L_DES_ede3_cbc_encrypt_begin +.align 64 +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 |